< 1455408218 328612 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But maybe that wouldn't have worked because the elves couldn't create the right kind of mirrors and lenses, or else it couldn't have worked since Gollum falling into Mount Doom might have been the only way to get Frodo to part from the ring forever. < 1455408385 567484 :boily!~alexandre@96.127.201.149 JOIN :#esoteric < 1455408428 845636 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :the outside, it is cold. brrrr. < 1455408462 309198 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :just burn frodo along with the ring < 1455408505 337030 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :I only got an Iron Ring on me. will it do? < 1455408630 493582 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :also, he\\oren\. could you add 盗 and 賊 to your font please? < 1455408865 50339 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :ok, next update will have them < 1455408955 527305 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what are those characters? < 1455409061 351704 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :steal, and thief < 1455409083 62530 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :盗賊 = theif < 1455409098 716231 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I see < 1455409099 53965 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :s/ei/ie < 1455409415 799148 :p34k!~p34k@nat-wh-wz4-12.rz.uni-karlsruhe.de QUIT : < 1455409549 99526 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :b_jonas: ? < 1455409580 127713 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :b_jonas: Cross-language type systems. < 1455410353 688390 :evalj!~jeval@catv-89-133-135-148.catv.broadband.hu QUIT :Remote host closed the connection < 1455410849 24194 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric : I'm asking here because I think some people here, especially ais523, [...] <-- for asking ais523, i recommend asking when ais523 is actually here hth < 1455411096 301558 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :ACTION concludes that by murphy's law, b_jonas will never see this at least without this lampshade. < 1455411476 240037 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric : (Pretty sure I'm on the maximum recommended dose of dextroamphetamine for my BMI) <-- you mean you'd normally be going through projects even _faster_? < 1455411520 907225 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :oerjan: Probably < 1455411669 635881 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric : hppavilion[1]: !classic game <-- not a classic game, check. < 1455411696 90340 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :oerjan: DYK what -> is in fuzzy logic? < 1455411701 8484 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :(DYK = Do You Know) < 1455411714 912696 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :At least, what the most simple definition is? < 1455411718 184207 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :i don't know fuzzy logic. < 1455411722 998593 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :OK :/ < 1455411743 124046 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :i have no idea whether C-H makes sense for it. < 1455411847 898877 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :oerjan: Probably not for classical, but what I'm formulating is Intuitionistic Fuzzy Logic, which is basically just adding some fuzz to intuitionistic logic < 1455411891 171885 :jaboja!~jaboja@emh138.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455411912 509302 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Curry-Howard makes sense for classical logic. < 1455412051 211264 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :indeed, if there's a problem it's with the fuzz. < 1455412158 215628 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oerjan: as in, the cops? < 1455412185 380706 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric : I'm building a Canadian snack pack. a snacanapack. <-- i'm sure this will be a hit in panama. < 1455412321 392249 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :so many potmantoilys < 1455412552 854517 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :Fuzzy Logic and Intuitionistic Logic actaulyl go together quite nicely < 1455412576 696365 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net PRIVMSG #esoteric :oerjan: Yeah, probably. But there shouldn't be a problem, if there's a problem it's probably just me < 1455412704 219513 :Treio!~Treio@87.244.233.250 JOIN :#esoteric < 1455413023 510757 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :oerjan: the best portmanteaux are vowel harmonized. < 1455413088 818952 :J_Arcane!~chatzilla@37-219-207-242.nat.bb.dnainternet.fi JOIN :#esoteric < 1455413186 84251 :Treio!~Treio@87.244.233.250 QUIT :Ping timeout: 240 seconds < 1455413235 628723 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 260 seconds < 1455413495 95546 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :are there anybody in this chännel who are Panamian? < 1455413541 86361 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455413553 883985 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@wn panamian < 1455413554 998968 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :No match for "panamian". < 1455413558 375821 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :@wn panamanian < 1455413559 458604 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :*** "panamanian" wn "WordNet (r) 3.0 (2006)" < 1455413559 601129 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Panamanian < 1455413559 601228 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : adj 1: of or relating to or characteristic of Panama or its < 1455413560 848833 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : people; "Panamanian economy" < 1455413562 863291 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric : n 1: a native or inhabitant of Panama < 1455413585 160284 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :no panamanas here < 1455413643 87631 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :...possibly _not_ google that word hth < 1455413706 734073 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :panamanas doo doo dododoo ♪ < 1455413717 450635 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :apparently the proper word is panameñas how unharmonic < 1455414011 682023 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :(meanwhile, holy disco abyss... so many colours everywhere...) < 1455414292 487922 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :ACTION wonders what boily is talking about. < 1455414325 365989 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :I got cast in the abyss, and I was some place where walls were changing colour randomly every turn. < 1455414338 700966 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :OKAY < 1455414424 41855 :heroux!sandroco@gateway.insomnia247.nl QUIT :Read error: Connection reset by peer < 1455414462 428123 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455414739 84601 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :貴貸貿賃資賛質輸述迷退造適广已巳巴遺郵郷酸鉱銅銭鋼閣防降盗賊限陛除険際障雑難非革頂預領飼 < 1455414876 285219 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :喜! < 1455415053 98641 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :with this, all kanji taught in primary school are covered < 1455416106 70788 :Melvar!~melvar@dslb-178-006-010-250.178.006.pools.vodafone-ip.de QUIT :Ping timeout: 240 seconds < 1455416110 422421 :MDream!~fyrc@c-73-187-225-46.hsd1.pa.comcast.net NICK :MDude < 1455416174 87749 :idris-bot!~idris-bot@dslb-178-006-010-250.178.006.pools.vodafone-ip.de QUIT :Ping timeout: 252 seconds < 1455416230 401475 :Melvar!~melvar@dslb-084-062-092-130.084.062.pools.vodafone-ip.de JOIN :#esoteric < 1455416355 580106 :hppavilion[1]!~DevourerO@93-231-58-66.gci.net QUIT :Ping timeout: 240 seconds < 1455416495 603514 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455416523 127281 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1455416542 90197 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455417393 108713 :boily!~alexandre@96.127.201.149 QUIT :Quit: CALLING CHICKEN < 1455417534 629730 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net JOIN :#esoteric < 1455417777 993514 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455417934 541263 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455419650 60504 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455419804 881551 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455419830 603465 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover QUIT :Read error: Connection reset by peer < 1455420138 981893 :olsner!~salparot@c83-252-193-184.bredband.comhem.se PRIVMSG #esoteric :@tell boily fatso day (or fat tuesday) was just this past tuesday actually < 1455420139 124335 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :Consider it noted. < 1455420661 162385 :XorSwap!~XorSwap@12.23.139.140 JOIN :#esoteric < 1455421290 998903 :hppavilion[2]!~DevourerO@58-0-174-206.gci.net JOIN :#esoteric < 1455421404 871281 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net QUIT :Ping timeout: 256 seconds < 1455421676 520525 :hppavilion[2]!~DevourerO@58-0-174-206.gci.net QUIT :Ping timeout: 256 seconds < 1455421948 295235 :Opodeldoc!~Opodeldoc@184.20.162.120 QUIT :Quit: Leaving < 1455423170 450155 :ais523!~ais523@unaffiliated/ais523 QUIT :Ping timeout: 252 seconds < 1455423240 660081 :jaboja!~jaboja@emh138.neoplus.adsl.tpnet.pl QUIT :Ping timeout: 256 seconds < 1455423349 665142 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :[wiki] 14[[07Brainfuck14]]4 10 02https://esolangs.org/w/index.php?diff=46402&oldid=46382 5* 0350.65.116.121 5* (+568) 10Added program for cell width < 1455424536 663646 :hppavilion[2]!~DevourerO@58-0-174-206.gci.net JOIN :#esoteric < 1455425164 744102 :variable!~variable@freebsd/developer/variable JOIN :#esoteric < 1455425182 630299 :MDude!~fyrc@c-73-187-225-46.hsd1.pa.comcast.net NICK :MDream < 1455425442 416832 :XorSwap!~XorSwap@12.23.139.140 QUIT :Quit: Leaving < 1455425915 596057 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455426003 366296 :perrier_!~cinch@107.170.175.57 QUIT :Remote host closed the connection < 1455426075 133921 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455426077 481481 :perrier_!~cinch@107.170.175.57 JOIN :#esoteric < 1455426083 703773 :variable!~variable@freebsd/developer/variable QUIT :Ping timeout: 264 seconds < 1455429700 593639 :hppavilion[2]!~DevourerO@58-0-174-206.gci.net QUIT :Ping timeout: 256 seconds < 1455432973 388814 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :which characters should I add next? < 1455433089 228432 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :all emojis :p < 1455433378 742826 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :PILE OF POO is a good one. < 1455433394 673329 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :reverse hand middlefinger extended < 1455433535 577028 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :I don't think that one's there? < 1455433549 417116 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :it is < 1455433565 111162 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :Sure enough. < 1455433580 65191 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :REVERSED HAND WITH MIDDLE FINGER EXTENDED < 1455433594 42416 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :U+1F595. < 1455433633 80373 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :snowman is also pretty relevant < 1455433842 132923 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I hve snowman already < 1455433901 826621 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :great < 1455434081 640082 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :haha @ [KH]an[jz][ai] < 1455434413 199462 :zadock!~outsider@81.180.208.252 QUIT :Quit: Leaving < 1455434432 675215 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :or what about these game symbols < 1455434451 898831 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :like chess pieces or heart/club/spade/diamond < 1455434508 370814 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :how about play/pause/stop/rewind/fast forward/etc. < 1455434510 17977 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Yes you should include suits if you have not already done so < 1455434515 99231 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oh, wait < 1455434534 191196 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :they don't have room in their cold hearts for those symbols < 1455434667 811475 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Are you sure? I think those symbol are good idea too (also previous track, next track, record, and eject) < 1455434757 53215 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Those were included in "etc.". < 1455434909 450717 :Treio!~Treio@87.244.233.250 JOIN :#esoteric < 1455436282 580005 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net JOIN :#esoteric < 1455438884 436087 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :http://web.mst.edu/~lmhall/WhatToDoWhenTrisectorComes.pdf < 1455439710 23310 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :(WARNING: Sad) < 1455439718 812070 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :(NSFIP) < 1455439893 227783 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :ip? < 1455440447 692005 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :myname: Intelligent People < 1455440452 725429 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :`? trisecting the angle < 1455440474 803188 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :trisecting the angle? ¯\(°​_o)/¯ < 1455440650 308095 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :`? angle trisection < 1455440654 757443 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :angle trisection? ¯\(°​_o)/¯ < 1455440659 499275 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :`? trisection < 1455440663 808439 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :trisection? ¯\(°​_o)/¯ < 1455440696 404966 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net PRIVMSG #esoteric :`le/rn trisecting the angle/Angle Trisection is an open problem that you should /definitely/ try to solve! For glory and honor! < 1455440709 42677 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Learned «trisecting the angle» < 1455440766 584279 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :wait, what < 1455440798 106654 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :angle trisection is like one of the easiest thing i can imagine < 1455441023 783000 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :"with an unmarked ruler and compass" is generally implied hth < 1455441050 365779 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :yeah, but i can trisect a segment therefore i can trisect an angle < 1455441070 779579 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :wait < 1455441075 221170 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :the three angle parts must be equal hth < 1455441076 746802 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :can i? < 1455441087 945091 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :no. hth. < 1455441092 785469 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :neat < 1455441113 475128 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :i thought it would be as easy as bisecting < 1455441144 253131 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :are there actually proves that this cannot be done? < 1455441161 788128 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :to be very concrete, you cannot construct a 20 degree angle. < 1455441173 777689 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :(for example.) < 1455441184 885391 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :yes there are, it's part of galois theory. < 1455441185 357668 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :or 30 < 1455441191 298327 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :30 is easy. < 1455441198 298091 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :maybe _you_ cannot. < 1455441210 753507 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :how do i do 30? < 1455441215 489886 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :bisect a 60 < 1455441237 485082 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :well, but how do i get 60 < 1455441255 380037 :Taneb!~Taneb@runciman.default.hacksoc.uk0.bigv.io PRIVMSG #esoteric :myname, I fell into that fallacy before < 1455441256 9869 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :the only angle i know you can get for sure is 90 < 1455441273 957976 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :start with two points, make a circle around each touching the other. < 1455441283 113139 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :oh, you can make a triabgle < 1455441284 509946 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :nvmd < 1455441313 74278 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be JOIN :#esoteric < 1455441378 262496 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :basically, that gives you all of 30, 60 and 90 somewhere between the original points and where things intersect. < 1455441405 751577 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :45 should also be possible < 1455441410 47877 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :yes. < 1455441429 981507 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :bisecting is, as you noted, easy. < 1455441450 70789 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :oh my god...this is painful to read < 1455441459 300668 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :a harder, still possible one is 72. < 1455441460 329875 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :" i can trisect a segment therefore i can trisect an angle" just...no < 1455441473 477579 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :diginet: don't worry he got better. < 1455441491 816300 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :he did not reach crank orbit. < 1455441513 930327 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :oerjan: I solved the halting problem < 1455441518 485802 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :it was pretty easy < 1455441523 994055 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :I just ran the computer...and it halted < 1455441528 825895 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :academics are so stupid < 1455441533 927734 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :well, twoducks solves it :p < 1455441535 518540 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :I can't believe no one thought of that before < 1455441572 244905 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :diginet: maybe they're just covering it up. < 1455441602 647895 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :to keep their precious computer science jobs. < 1455441635 766929 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :Big Computer Science needs to be exposed < 1455441731 366994 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Do you know the best way to fake Generator.prototype.return in JavaScript? < 1455441770 6238 :diginet!~diginet@107.170.146.29 PRIVMSG #esoteric :don't use JS < 1455441789 182675 :oerjan!~oerjan@hagbart.nvg.ntnu.no QUIT :Quit: Nite < 1455441921 467634 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :fun fact: a time ago you could make a 90 degree angle by bisecting a line in euclidthegame < 1455441948 384212 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :like, 180/2=90 < 1455441981 44351 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :you could also find the center of a circle by copying it on itself 2 times < 1455442042 542264 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net QUIT :Ping timeout: 256 seconds < 1455442576 238095 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :"trisect an angle" implied part is "with only straightwdge and compass" < 1455442597 810974 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :"halting problem" implied part is "on a turing machine" < 1455442600 790666 :Taneb!~Taneb@runciman.default.hacksoc.uk0.bigv.io PRIVMSG #esoteric :I think you can trisect an angle with the power of origami < 1455442701 152831 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :is halting problem solvable for for stack machines? < 1455442705 937784 :Taneb!~Taneb@runciman.default.hacksoc.uk0.bigv.io PRIVMSG #esoteric :I think so\ < 1455443240 198352 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :This is what I did: function(x) { var o={}; var e; try { return this.throw(o); } catch(e) { if(e===o) return {value:x,done:true}; throw e; } } It isn't perfect < 1455443866 898016 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :I noticed that http://esolangs.org/wiki/The_chan-esoteric_stack has a link to the nonexistent page "Principals of Eso". What are these principals? < 1455443927 446456 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :It also says the rest of the stack is implemented in Python or Forth, although the various other programs listed are different programming languages. < 1455444054 707956 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :And then it lists my Z-machine implementation, although I have written three (ZORKMID, JSZM, Famizork) and it does not specify. None are written in Python or Forth, although Famizork is probably the strangest one (in many ways; you are free to ask and/or complain) < 1455444172 678244 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Also, what kind of extended variant of call/cc is it? < 1455446568 365491 :Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover JOIN :#esoteric < 1455447650 146315 :^v!~v^@c-68-41-215-101.hsd1.mi.comcast.net PRIVMSG #esoteric :so um, i calculated 6942069^69420 to stress test a custom bignum library .-. < 1455447659 623639 :^v!~v^@c-68-41-215-101.hsd1.mi.comcast.net PRIVMSG #esoteric :http://i.imgur.com/aV6RwBL.png < 1455447802 270084 :Taneb!~Taneb@runciman.default.hacksoc.uk0.bigv.io PRIVMSG #esoteric :Nice < 1455448140 671920 :LexiciScriptor!~LexiciScr@net-37-116-109-4.cust.vodafonedsl.it JOIN :#esoteric < 1455448241 478952 :Treio!~Treio@87.244.233.250 QUIT :Quit: Leaving < 1455449611 104212 :bender|!~benderx2@2404:e800:e61a:41d:83f:33dd:b5b2:bef0 JOIN :#esoteric < 1455449837 782984 :Treio!~Treio@87.244.233.250 JOIN :#esoteric < 1455450262 249334 :zadock!~outsider@81.180.208.252 JOIN :#esoteric < 1455450968 679801 :aloril!~aloril@dsl-tkubrasgw1-54fa3f-129.dhcp.inet.fi QUIT :Ping timeout: 250 seconds < 1455450992 509928 :Treio_!~Treio@87.244.233.250 JOIN :#esoteric < 1455451000 22688 :Treio_!~Treio@87.244.233.250 QUIT :Remote host closed the connection < 1455451043 64207 :Treio!~Treio@87.244.233.250 QUIT :Quit: Leaving < 1455451355 134240 :aloril!~aloril@dsl-tkubrasgw1-54fa3f-129.dhcp.inet.fi JOIN :#esoteric < 1455452276 87674 :J_Arcane!~chatzilla@37-219-207-242.nat.bb.dnainternet.fi QUIT :Ping timeout: 252 seconds < 1455453120 152739 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :[wiki] 14[[07Talk:Call/cc14]]4 10 02https://esolangs.org/w/index.php?diff=46403&oldid=46327 5* 03Zzo38 5* (+367) 10lem/cc < 1455453250 719457 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :that is one bad explanation there < 1455453332 82002 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be QUIT :Ping timeout: 252 seconds < 1455454158 874830 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :https://scontent.fath4-1.fna.fbcdn.net/hphotos-xlf1/t31.0-8/12710739_1236761493003893_1868373311706196033_o.jpg < 1455454478 283535 :Treio!~Treio@87.244.233.250 JOIN :#esoteric < 1455454664 871812 :LexiciScriptor!~LexiciScr@net-37-116-109-4.cust.vodafonedsl.it PRIVMSG #esoteric :http://store.hermanmiller.com/Products/Embody-Chair < 1455455027 515415 :Treio_!~Treio@87.244.233.250 JOIN :#esoteric < 1455455524 93011 :bender|!~benderx2@2404:e800:e61a:41d:83f:33dd:b5b2:bef0 QUIT :Remote host closed the connection < 1455455552 105256 :bender|!~benderx2@2404:e800:e61a:41d:83f:33dd:b5b2:bef0 JOIN :#esoteric < 1455455803 462042 :Treio!~Treio@87.244.233.250 QUIT :Quit: Leaving < 1455455808 153649 :Treio_!~Treio@87.244.233.250 QUIT :Quit: Leaving < 1455456868 800825 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :i hate my fiber connection < 1455456887 515059 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :i downloaded steve jobs (2015) in 3 minutes < 1455456897 483721 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :wanna switch? < 1455456899 85805 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :it's too fast, there's no time to do anything < 1455456946 609675 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :myname: how's yours? < 1455456977 153639 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :i have cable with like 25 mbits, you will have plenty of time to do stuff < 1455457095 135259 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :mine is 4x as fast :p < 1455457114 549598 :LexiciScriptor!~LexiciScr@net-37-116-109-4.cust.vodafonedsl.it PRIVMSG #esoteric :mine is 0.5x as fast :/ < 1455457233 329590 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :100 mbit sounds lame for fiber < 1455457253 309133 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :it's not google fiber < 1455457280 54421 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :so? < 1455457303 337478 :Hoolootwo!~Hoolootwo@you.know.what.toasters.rocks PRIVMSG #esoteric :I could pipe that through any old ethernet cable < 1455457309 456456 :Hoolootwo!~Hoolootwo@you.know.what.toasters.rocks PRIVMSG #esoteric :not too old though I guess < 1455457330 695777 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :shutup i don't get to decide what my isp serves < 1455457390 462391 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :lol < 1455457392 644298 :Hoolootwo!~Hoolootwo@you.know.what.toasters.rocks PRIVMSG #esoteric :I only get 10 megabits through a repurposed phone line, you're lucky < 1455457401 568015 :boily!~alexandre@96.127.201.149 JOIN :#esoteric < 1455457405 746960 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :i don't think there's anything better in italy < 1455457412 820327 :Hoolootwo!~Hoolootwo@you.know.what.toasters.rocks PRIVMSG #esoteric :friggin dorm internet < 1455457777 484689 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I think this thing is nominally 76/19 over a repurposed phone line as well. < 1455457811 987904 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I'm slighly unsure why UK has opted in for "standard" nominal DSL speed set of 9.5/19/38/76. < 1455457827 611114 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :In Finland it was more like 10/25/50/100. < 1455457955 259908 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Besides, the modem says the negotiated rate is 79999/19999 kbps. But maybe they include some sort of a standard 5% overhead in the marketing numbers. < 1455458058 949388 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :pareto bandwith < 1455458133 306102 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :izabellora. where were you going at in Italy again? < 1455458153 528475 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :@massages-loud < 1455458153 707363 :lambdabot!~lambdabot@haskell/bot/lambdabot PRIVMSG #esoteric :olsner said 10h 33m 34s ago: fatso day (or fat tuesday) was just this past tuesday actually < 1455458312 243557 :Treio!~Treio@87.244.233.250 JOIN :#esoteric < 1455458422 798296 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`? fetch < 1455458460 725522 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :fetch? ¯\(°​_o)/¯ < 1455458531 16910 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`le/rn fetch curses function that fets a char. see fetch(3X) for more info < 1455458533 461328 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455458556 381133 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :ACTION funny < 1455458599 578948 :myname!~myname@84.200.43.57 PRIVMSG #esoteric :mv_fetch! < 1455458618 25241 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :it mvly fets a ch? < 1455458625 83932 :groteworld!~groteworl@unaffiliated/groteworld JOIN :#esoteric < 1455458980 307642 :Treio_!~Treio@87.244.233.250 JOIN :#esoteric < 1455458989 985387 :Treio_!~Treio@87.244.233.250 QUIT :Remote host closed the connection < 1455459471 535995 :PinealGlandOptic!~PinealGla@82.144.205.57 JOIN :#esoteric < 1455460196 374587 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 248 seconds < 1455460520 476765 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455461320 522065 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 256 seconds < 1455461367 601140 :groteworld!~groteworl@unaffiliated/groteworld QUIT :Quit: ZZZzzz… < 1455461660 664247 :MDream!~fyrc@c-73-187-225-46.hsd1.pa.comcast.net QUIT :Ping timeout: 256 seconds < 1455461699 258214 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455461871 376791 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455462160 267951 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :“<\oren\> with this, all kanji taught in primary school are covered” – primary school means which grades? < 1455462213 414948 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :oerjan: I know, but he isn't the only one, there are more people here < 1455462223 707166 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :he's just the only one I can identify < 1455462482 522732 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: add the Korean ones < 1455462658 470707 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: and I think you haven't fixed the presentation of Shavian letters on the test page yet so that they appear in only four lines, not five, so the lowercased version of a letter is two lines below the uppercased one < 1455462866 161362 :Vorpal!~Vorpal@unaffiliated/vorpal QUIT :Ping timeout: 240 seconds < 1455462966 758134 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :there are Korean Kanjis? < 1455462991 6900 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :boily: no < 1455462999 364371 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :boily: or actually, yes there are < 1455463003 219023 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but I wasn't asking for those < 1455463013 448821 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :boily: \oren\ asked what *characters* he should add < 1455463030 531857 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :oooooh. that should teach me to not halflogread. < 1455463051 525648 :boily!~alexandre@96.127.201.149 PRIVMSG #esoteric :meanwhile, time for tile shuffling. < 1455463062 158077 :boily!~alexandre@96.127.201.149 QUIT :Quit: VEGA CHICKEN < 1455463081 554986 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I'm asking him to add korean hangul syllables and the few non-syllable hangul characters < 1455463127 702975 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455463178 527964 :Vorpal!~Vorpal@unaffiliated/vorpal JOIN :#esoteric < 1455463379 167487 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455463481 321514 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :rsyslog has weird configuration < 1455463703 673893 :LexiciScriptor!~LexiciScr@net-37-116-109-4.cust.vodafonedsl.it QUIT :Ping timeout: 264 seconds < 1455463750 544219 :LexiciScriptor!~LexiciScr@net-37-116-107-1.cust.vodafonedsl.it JOIN :#esoteric < 1455464215 607246 :groteworld!~groteworl@unaffiliated/groteworld JOIN :#esoteric < 1455464615 610696 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 260 seconds < 1455464925 61098 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455465406 543500 :LexiciScriptor!~LexiciScr@net-37-116-107-1.cust.vodafonedsl.it QUIT :Quit: LexiciScriptor < 1455465428 97276 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1455465561 660565 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hi, ais523 < 1455465586 45979 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hi < 1455465633 442843 :APic!apic@apic.name PRIVMSG #esoteric :Hi < 1455465724 57592 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: I've been trying to learn git. I still don't like it, and I'd like a better vcs. < 1455465735 416049 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But I have a question about git. < 1455465742 83051 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :go on < 1455465754 471411 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :fwiw, my opinion on git is that it's possible to do a lot better, but git seems to have won the VCS wars < 1455465755 900090 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(Let me try to paste it from channel history.) < 1455465768 563852 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so if you use something else, people will find it harder to interoperate with you < 1455465795 628624 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not really. I can still use two vcs together, or send unified diff patches, and stuff < 1455465799 820039 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but yes, partly true < 1455465843 812605 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Let me copy the question from channel history. < 1455465853 537757 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I want to apply the difference between two commits (call them t1 and t2) to the current state (both index and checked out files, error if their difference conflicts with the changes applied). < 1455465857 792095 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :The two commits are related but it's possible that neither is an ancestor of the other. < 1455465862 665490 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :This should take into account the history, in that it traverses the commits from t1 to the common ancestor of t1 and t2 then to t2, and preferable also take into account the history between the commits and the commit currently checked out. < 1455465868 58531 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :The index together with the checked out files may already have modifications, and applying the differences may conflict with these, or there can simply be a conflict between HEAD and those changes, in which case I want proper conflict markers as with a normal merge. < 1455465875 173184 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I want to know the best way to do this. What I think might work is this: ( git revert t2..t1 && git cherry-pick t1..t2 ) < 1455465881 939406 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Does that combination of two commands do what I want? Whether or not, what's the best way to do this, rather than that command? < 1455465941 551624 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: the first thing to note is that git is very dumb in terms of preserving history < 1455465971 872885 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yes, that's one of the things I don't like in it. Svn preserves the parent (a previous path and version) of each committed file or directory < 1455465981 493856 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what you've written is effectively equivalent to git diff t1..t2 | git apply < 1455466001 988553 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in order to do proper conflict markers, I'd recommend doing git stash first < 1455466008 308675 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then applying the commit difference < 1455466018 955057 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then doing a git stash pop and resolving the conflicts < 1455466022 90245 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(which can be any file of the same is-directory from any previous version internally, although the working copy interface, including the working copy public api, makes it very hard to set it arbitrarily) < 1455466022 642053 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although git's UI for that is painful < 1455466034 587569 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :sometimes I just make a temporary commit in order to work around the issues < 1455466070 159071 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the other possibility would involve rebasing the current branch against t1, then merging t2 < 1455466082 510254 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: the problem with (git diff | git apply) is two: one is that the unified diff format preserves less of the context of the original files than a straight git apply or git merge could use for merging, since it contains only some of the lines, < 1455466109 493001 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :the other is that it doesn't use intermediate versions in the history, so it might not be able to match so well, especially across file moves and copies < 1455466139 319559 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: right; however it's hard to get git to act more intelligently than that < 1455466166 220302 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :almost anything you do will try to do a diff then merge, all in one go < 1455466167 614166 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :“in order to do proper conflict markers, I'd recommend doing git stash first / then applying the commit difference / then doing a git stash pop and resolving the conflicts” - hmm < 1455466176 559737 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the rebase method is the only method to get it to do it one commit at a time, AFAIK < 1455466183 863899 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm < 1455466229 540847 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but how do I get rebase to not try to destroy what the branch ref pointed to before the rebase? < 1455466230 665500 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, it's possible that a merge runs one commit at a time, in which case rebase+merge would almost certainly be your best bet; the problem is that it edits history < 1455466233 666539 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :that's what scares me about rebase < 1455466249 201141 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :rebase never destroys anything; rather, it makes a parallel copy of history and points your branch at that < 1455466260 57346 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the original is still around, but typically without a name unles you gave it a second name first < 1455466294 335436 :p34k!~p34k@nat-wh-wz4-12.rz.uni-karlsruhe.de JOIN :#esoteric < 1455466301 989180 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :perhaps it'd help if you explain the context for what you're doing, there might be another way < 1455466307 739921 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(note: this sort of thing is what git is worst at) < 1455466311 182375 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: merge editing history should be no problem, because I can fix that by merging to a temporary local branch and then merge --squash --no-commit to the current index-file state, < 1455466344 957680 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but the problem with merge is that I don't see how to make it merge the difference between two states, it only wants to merge a commit and ALL ITS ANCESTORS < 1455466350 981112 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I can't make merge exclude some of the previous changes < 1455466353 803788 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so what should I merge? < 1455466407 98631 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: it doesn't actually _destroy_, but it changes what the branch ref points to, and I don't understand how to make it not do that < 1455466422 720193 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :s/it/rebase/ < 1455466439 880409 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :why doesn't rebase just have a switch to use a new branch name? < 1455466462 389851 :Opodeldoc!~Opodeldoc@184.20.162.120 JOIN :#esoteric < 1455466463 208054 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you can create a new branch first and then rebase that < 1455466471 228191 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm < 1455466490 399627 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ok, so hw does the rebase solution work exactly? < 1455466519 396605 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, I have a solution for if t1 is an ancestor of t2; you create a new branch, rebase it so as to delete all the commits you don't want to merge (so only the commits you want are forked off an ancestor of the branch you're merging to), then merge < 1455466544 854880 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :honestly, I keep thinking that it's easier to do my version control by getting everything into a subversion repository, doing stuff there, and getting it back to git, but the problem is that I'll never learn git with that attitude < 1455466573 826096 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :how does subversion do the operation in question? < 1455466591 644830 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: the third syntax of svn merge does this basically < 1455466610 89268 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the only VCS I can think of that can do what you requested in a history-aware way is darcs, and then only if t1 is an ancestor of HEAD < 1455466668 880928 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :takes two repo paths with versions in the same repo you have checked out, and applies the difference to the checked out working copy < 1455466705 262618 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :this is sort of more powerful because you can use arbitrary paths, not only diffs, but also less powerful because it requires ancestry of files to correspond properly, even in the working copy < 1455466717 624023 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :s/not only diffs/not only branches/\ < 1455466747 8645 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I really like the whole svn model, except how it's not a dvcs < 1455466749 508753 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: does scapegoat have a way to undo a merge in a history aware way that doesn't require at least one rebase/cherry-pick? < 1455466751 446515 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aha, svn relies on t2 being the result of a merge of anything and a direct ancestor of HEAD < 1455466779 466857 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ACTION looks up the scapegoat plans < 1455466797 532421 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :is scapegoat the name of your hypothetical vcs? < 1455466801 608916 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :yes < 1455466829 964843 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :it's called scapegoat because if you use it, you can blame all your development workflow problems on ais523 < 1455466857 935069 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it's called scapegoat because it uses blame (rather than diffs or trees) as its basic unit of information < 1455466867 97647 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I blame all my development workflow problems on stupid co-workers who sometimes commit what seems like monkeys typing on their keyboard to the vcs repo < 1455466884 866464 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :coppro: it depends on what you mean by "undoing a merge" < 1455466898 310290 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: oh? < 1455466914 342482 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :like, if you just gave a merge command, you can put things back the way they were in one command < 1455466940 204169 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: about the git, can you tell why ( git apply --no-commit t2..t1 && git cherry-pick --no-commit t1..t2 ) wouldn't work < 1455466956 948736 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: first should be cherry-pick < 1455466966 797864 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: but can you do it without breaking history? < 1455466969 204917 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :s/apply/revert/ < 1455466975 299170 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: in git, you can do it with reset, but then you break histoyr < 1455466975 600064 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: no, first should be revert < 1455466975 742442 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and it would work, it's just not history-aware at all, it's identical to the diff | apply method < 1455466980 588319 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :because cherry-pick doesn't go backwards < 1455466985 87950 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I see < 1455466994 94706 :bender|!~benderx2@2404:e800:e61a:41d:83f:33dd:b5b2:bef0 QUIT :Ping timeout: 252 seconds < 1455467010 20634 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: not history-aware in what sense? not aware of the history between t1 and t2, or not aware of the history between t1 and HEAD ? < 1455467019 455092 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :coppro: so if you run git merge (with a clean working directory) followed by git reset --hard, there's no change to anything, it puts everything back the way it was < 1455467027 428671 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: right < 1455467028 960555 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: not aware of either, it's literally just diffing the trees < 1455467043 249333 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :but if I merge, and then push to a remote that I can't force, I can't undo the merge < 1455467086 444026 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, I see < 1455467088 960138 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: I see < 1455467097 464076 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the remote now has dependencies on the branch that was merged < 1455467111 554097 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not history aware might not be such a big problem as long as it can figure out intelligently which files are moved where < 1455467122 955765 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :if I need more history, I can merge in more intermediate steps between t1 and t2 < 1455467140 523045 :zadock!~outsider@81.180.208.252 QUIT :Ping timeout: 272 seconds < 1455467145 637243 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :scapegoat's plans have been worked out in two stages, the general design and some specific design < 1455467170 60153 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but sadly I can't really tell git which files correspond to which other files, unless I tell it to merge changes to individual files, at which point I'm just diff3ing without a vcs basically < 1455467175 805414 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there's nothing in the bits of the specific design that have been worked out yet that would let you revert a merge in that sense (i.e. have the merge and the undoing of the merge both in history) < 1455467182 225402 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(except of course it still compresses stuff) < 1455467194 165347 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :however the general design would allow it via the same mechanism as merge conflict resolution < 1455467206 986679 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(you'd add a commit whose effect was to cancel out all the previously merged commits) < 1455467221 14942 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: git doesn't know which files correspond to which other files, it works it out heuristically < 1455467228 560003 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: exactly < 1455467233 103889 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which is why this might work < 1455467250 454888 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I'll probably only find out how well this stuff works as I actually try to use git at work < 1455467276 36886 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And when I get really annoyed, I can still get versions into a temporary svn repo and use svn commands < 1455467301 88580 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I have already tried that, git together with svn. It sort of works, but has problems. < 1455467315 682838 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :git-svn basically assumes that both the git and svn repos are entirely linear < 1455467330 297809 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I didn't use git-svn < 1455467333 819956 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :only git and svn separately < 1455467344 308727 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :each saw the other as only local modifications in the checked out files < 1455467359 857746 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: would such a cancellation commit allow the branch to be remerged correctly, then? < 1455467390 715245 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes, although there'd be a dependency between the merge and the cancel < 1455467399 817369 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or, hmm, maybe not < 1455467406 945024 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't really trust git-svn because the git and svn repo storage models are so different that I don't think they can correspond in a useful sane way < 1455467413 845823 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if you merge a commit twice then cancel one, that should theoretically be the same as merging it once < 1455467430 115469 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: git-svn basically forces you into the common subset of git and svn < 1455467435 423788 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: right < 1455467494 482287 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :That can still be useful in one case: when the dev people decide that they prefer git over svn and convert the project to use git, it's better to put some of the history into the git repo rather than put none of it in. < 1455467502 604807 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :So you use git-svn to convert the svn repo to git. < 1455467532 372688 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Btw, the context is that at work, people decided to use git, but I'm not convinced it's better. < 1455467541 881208 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :omg, our deploy stopped working because someone had a folder open in a remote desktop session so it wasn't able to delete it. windows is the worst < 1455467559 381987 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: better than svn? < 1455467572 350057 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I would suggest it is, but personally I find hg to be even better < 1455467582 800086 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :But that is probably because I'm more used to it < 1455467585 281407 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :It has some advantages, and if they would actually get people to use git well, then it would be better than not using a vcs properly, but I think they don't use either properly yet. < 1455467591 857822 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :There's hope they'll learn, maybe. < 1455467594 896734 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Some of them at least. < 1455467606 272339 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :git is conceptually better but its user interface sucks < 1455467611 282680 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :we use hg at work, and it works fairly well for us < 1455467617 708735 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: I actually prefer svn conceptually too < 1455467622 930272 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :oh and TortoiseHg has a *really* good GUI < 1455467637 710843 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Not sure if there is anything like that for git? < 1455467655 224261 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :in particular, there doesnt seem to be a good way to do what "svn ci" does in one command < 1455467661 435900 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(Oh and tortoisehg is not windows specific, which I believe tortoisesvn is) < 1455467680 212137 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :\oren\: You mean commit and push? < 1455467682 209606 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :There's one incidental advantage of them using git by the way: since git doesn't really support sparse checkouts (there's rumours they're possible, but certainly not easy), < 1455467683 405345 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455467707 567137 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I can get them not to commit their huge gigabyte large useless trees or files into the repo, which they used to do with the svn repo. < 1455467729 851826 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: why would they...? Never mind < 1455467745 635447 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, part of the problem is the co-workers (and also me), not only the software < 1455467755 373490 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: svn:ignore / .gitignore? < 1455467785 842381 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: partly works, but sometimes they committed stuff that shouldn't be in the vcs deliberately < 1455467789 768846 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I mean, we use that for the build directory and stuff like that at work (with .hgignore) < 1455467796 465919 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Okay? < 1455467807 768458 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :In fact, there's also stuff that _could_ be in the vcs if only it supported sparse clones: < 1455467832 855996 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Seems like the only way to solve that would be discussing the issue and arriving at a consensus or at least a policy < 1455467837 545120 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it would make sense to add certain large dependencies to the vcs, and we did so with svn, because it makes it easier to check out and build the project without too much extra setup, < 1455467857 610836 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: what about sub-repos? I think git has that too? < 1455467861 201455 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but it's impossible with git because you'd have to download all the history of the large dependencies, many of which are binary prebuilt and so don't diff-compress well. < 1455467861 618061 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :well basically with git what I usually do it < 1455467867 255808 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: We certainly use sub repos at work with hg < 1455467881 503874 :lynn!~lynn@unaffiliated/lynn JOIN :#esoteric < 1455467886 792942 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455467900 849671 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: perhaps could work, but wouldn't be too easy to set up, because you'd have to create a new repo on the server each time you upgrade a large dependency < 1455467928 504636 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I got them to compromise and put the large deps in an svn repo, from where I can check them out < 1455467931 971675 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :that works well < 1455467938 712960 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Not much checked in binaries there (there are a few, external proprietary libraries ) < 1455467940 917044 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :this way it's only two repos, not many sub-repos < 1455467961 641070 :zadock!~outsider@81.180.208.252 JOIN :#esoteric < 1455467965 365110 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(well, in theory. actually posssibly three because the svn brings in stuff from sub-repos. that doesn't work well, because of the svn interface) < 1455467973 364260 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Oh, that reminds me, I have an svn question about subrepos too. < 1455467985 902454 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :git commit -a; git push < 1455468036 622242 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :wait. maybe a bash function can do this? < 1455468039 795220 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :git can do shallow submodules, though I'm not sure how realistic that sort of stuff would be. < 1455468041 134324 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well, we use many sub repos for a reason, since we have a common platform maintained by one team (abstracts hardware / simulation differences, CAN drivers, and so on), lots of shared functionality (talking with engine controllers of specific brands, path finding, ...) and then an application on top for the specific machine < 1455468043 375385 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :scapegoat can be set up to have a one-command commit+push < 1455468052 975169 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :specifically, you can set up a repository to mirror your own local repository < 1455468058 787315 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :then any changes to the local repo will be pushed automatically < 1455468078 87281 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so all you have to do manually is the commit < 1455468084 858934 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :\oren\: obviously it can. Bash is also turing complete < 1455468114 290915 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :or, well, as turing complete as anything running on a real computer is < 1455468142 458298 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: hm... what about merges and rebasing then+ < 1455468163 925590 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :function gitci() {git commit -a;git push} < 1455468168 596080 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: scapegoat doesn't have rebasing, and merges are no different from commits in this respect < 1455468169 127708 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :(And shallow clones in general.) < 1455468183 66674 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: scapegoat is not git? Or what is it? < 1455468212 198236 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: it's a VCS that #esoteric have been planning for years, because the existing VCSes suck < 1455468217 212119 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :however nobody wants to actually write it < 1455468286 974173 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: I'm not very familiar with the git workflow, but my usual hg workflow (which is probably horrible) is working with versioned MQ patches (possibly in multiple sub repos) until I'm ready to push, then I rebase everything to top and build (and test again), then I push. Repeat if someone else pushes while you do it (usually things don't happen that quickly) < 1455468296 368196 :Elronnd!elronnd@znc.dank.ninja NICK :earenndil < 1455468316 877730 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :my preferref VCS in practice is "time/version stamped folders" < 1455468337 34982 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: that behaviour isn't considered terrible wrt git; it's almost a flamewar whether the side-repositories (which git calls "branches" but that word means something else in hg) should be rebased or just merged < 1455468338 470058 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: that way the history is mostly linear, not "wide and messy" < 1455468348 510349 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :merging is more honest wrt the history; rebasing looks prettier but destroys information < 1455468384 501891 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: a more narrow history aids in binary searching for introduced bugs, Also it is easier to read and understand what happened < 1455468390 929266 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :“ scapegoat can be set up to have a one-command commit+push / specifically, you can set up a repository to mirror your own local repository” -- so can fossil, I hear < 1455468411 919267 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: but branches in git, is that like named branches in hg? < 1455468414 937845 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Or is it different? < 1455468418 774728 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :wait. idea: what if you simply did "timestamped folders" within a compressed archive? < 1455468426 990839 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you can binary search just as well with the merge version < 1455468444 484018 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :The feeling I've gotten from git submodules is that they're kind of awkward, workflow-wise. E.g. when you clone a repository that contains submodules, you'll need to do all that "git submodule init" / "git submodule update" stuff locally by hand, and I'm not sure if there's any way to e.g. put something in the repo so that the submodule clones are shallow by default. < 1455468444 626385 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you check both parents first to see which side has the bug, then binary search within the side where the bug occurs < 1455468462 924818 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: branches in git are basically equivalent to separate repositories, but stored in an efficient way < 1455468496 890052 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: hm, so what is the git equivalent to named branches in hg then? < 1455468511 484795 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :wrt binary search: right, but on average, doesn't that result in having to check more revisions? < 1455468560 202128 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :so in other words, you'd have "repo.tgz" which contains 20160102111640/ and so on, each folder with a copy of every file. but because of the compression, the the copies don't take up much space < 1455468567 915961 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :fizzie: sub repos in hg work fine, at least if your workflow is having a shell repo on top containing sub-repos (but not much in the way of code). Can't speak for other ways to use hg sub repos < 1455468603 303327 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Anyway, svn question. I have a checked out directory with multiple large externals in it. I uncheckout one of them by ( svn up --set-depth=empty subdir && svn clean ). After that, how can I check out that external again in such a way that it's a sparse checkout (starting empty, then I'll change it) YET svn knows that it's the external given in the externals property, not just an unrelated checkout? < 1455468604 846288 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :git's way of doing it seems oddly complicated < 1455468612 395756 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I can't get the working copy to do that in any way. < 1455468642 252852 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't think I can even full checkout the external without having to re-checkout the whole directory containing that external, including the other large externals. < 1455468642 790537 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: what is a sparse svn checkout? If you mean "not the whole history" I thought that was always the case in svn? < 1455468669 575453 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: sparse checkout means not the whole tree. svn has quite good support for that, though not faultless. < 1455468671 73932 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Though I haven't used svn for years < 1455468674 604076 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Ah < 1455468676 254437 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Okay < 1455468690 499262 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I don't see why you would call git branches "separate repositories" when they're literally just a pointer to a commit that gets moved automatically when you make new commit while that branch is your current branch. < 1455468716 573244 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: basically the working copy stores which parts of the tree are checked out and which aren't, and in fact you can also have any part of the working copy check out any version of any path in the repo at any depth < 1455468722 101086 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :fizzie: so each commit doesn't belong to a specific branch? < 1455468763 284937 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :One problem with git is that on windows it can't have multiple checkouts of the same repo without storing the history twice. < 1455468763 874788 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: No. < 1455468781 96505 :lleu!~gnomebad@unaffiliated/lleu JOIN :#esoteric < 1455468797 507613 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :That's one of the reasons why I insisted really hard (when they decided to use git) to make people not put large trees in the history. < 1455468798 431929 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :fizzie: unlike in hg, where you can look at the history and see which branch a that commit is a part of? (Of course all commits prior to the branching point or prior to a merge between branches ends up being part of multiple branches) < 1455468802 191599 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I want multiple checkouts. < 1455468805 958802 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Sometimes four or more. < 1455468814 407693 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :With svn, that's easy. < 1455468824 721653 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(but it still is part of a single specific branch) < 1455468870 243672 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: can't you share the history data between multiple checkouts? At least mercurial supports hardlinking common data files in the .hg directory < 1455468875 492103 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I would assume git can do the same? < 1455468893 321472 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: how does that work? For a commit, you can ask which branches it's part of? Is that sort of like fossil's mutable labels or tags or however they're called? < 1455468910 745025 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: hm... not familiar with fossil < 1455468911 428818 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: git can do that on a filesystem where you can create hard links. No luck on windows. < 1455468941 805123 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Vorpal: Well, I mean. A branch is a pointer to a commit. You're free to make conceptual constructs like "all parent commits" and call them as being "in the branch", or "in the history of the branch", or whatnot. < 1455468942 738892 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: NTFS supports hardlink, mercurial supports hardlinking on Windows < 1455468952 202556 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: if you use FAT32 you are fucked though < 1455468961 286744 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: NTFS supports, but I think you need to be an admin to create them or something. Or is that only syminks? < 1455468975 933291 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: only symlinks afaik < 1455468978 950344 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Hmm < 1455468985 88721 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :maybe git does support this on windows too then? < 1455468987 183363 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I'll have to test < 1455468990 866458 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: though it differs between windows versions? < 1455468992 226231 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what's the switch for clone? < 1455469003 340492 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :for git? no clue < 1455469023 608516 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: also how are you a developer without local admin? < 1455469025 476556 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :No FAT32, except on camera SD cards. People aren't that stupid. < 1455469040 409254 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I might have local admin, but that doesn't mean git commands run as such < 1455469045 430068 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :True < 1455469051 387966 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hardlinking should be the default for git clone that doesn't cross filesystem boundaries. < 1455469053 501642 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :But you could run a relink command as that < 1455469061 753926 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :There's only a "--no-hardlinks" switch if you want to disable it. < 1455469085 298040 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :at least hg has a (plugin?) command to relink as much data as possible when both repos has pulled from a remote repo separately < 1455469097 411893 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Saved gigabytes for me < 1455469098 308682 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :fizzie: no, I mean the switch to set up the remote of the clone to be the same as the remote of the repo I'm cloning < 1455469116 358516 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Oh. I don't remember that. < 1455469122 844792 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :How do I have multiple git checkouts without downloading pulled data twice by the way? < 1455469147 843857 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :They've added the "multiple separate working trees" thing as a "real" git command very recently, by the way. < 1455469150 848765 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :http://git-scm.com/docs/git-worktree < 1455469164 827988 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Well, "very recently"; maybe 2.5 or so. < 1455469169 562511 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Perhaps by mirroring the repo and pulling from that... < 1455469177 252251 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :fizzie: really? I'll have to look that up < 1455469179 565524 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :that would be great < 1455469184 654993 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: wrt commits belonging to branches: http://tortoisehg.bitbucket.org/img/vt_history.png explains it. From what I can tell using tortoisehg each commit is part of a named branch there (that GUI assigns a colour to each branch in the repo). < 1455469195 148180 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :especially if it can also do sparse checkouts < 1455469201 898012 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :So even after merges that commit has the branch "attribute" set to the same as when originally commited < 1455469226 814175 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: hmm, maybe I'd better not try to confuse myself with mercurial when my goal is learning git and figuring out how to use git and svn at work < 1455469233 201596 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: fair enough < 1455469252 626124 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :When they switched to git, I got a promise from them that they won't switch to mercurial any time soon < 1455469255 234963 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I'm happy we use hg, since it works really well < 1455469268 25624 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't claim mercurial is bad, but I didn't want us to switch. < 1455469268 572971 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric : I don't see why you would call git branches "separate repositories" when they're literally just a pointer to a commit that gets moved automatically when you make new commit while that branch is your current branch. ← actual separate repositories are also literally that if the commits can be shared on disk, and almost that except that the commits have to be duplicated for data visibility reasons otherwise < 1455469281 93855 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(although as git commits are immutable, duplicating them shouldn't be visible to the user) < 1455469298 705097 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Hrm. I have no idea if the worktree stuff lets you have different sparse checkouts for the different working trees. < 1455469318 436725 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(They didn't intend to, either, but I needed an assurance about the future.) < 1455469352 41237 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455469363 738971 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: what sort of windows GUI is there for git btw? < 1455469366 684554 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :fizzie: it's not really only sparse checkouts that matter, but sparse clones < 1455469369 67085 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I'm curious < 1455469418 822424 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: multiple, there's a so-called tortoise git, and the built-in git gui tool, and some fancy stuff I don't remember the name, and more. since it's won the vcs wars, everyone is making separate fancy guis for it. I don't care, I'm just trying to learn the command line. < 1455469430 229023 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :many git guis are terrible < 1455469433 835815 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :sure < 1455469437 161009 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :gitk is good for read-only use < 1455469455 970128 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :although it doesn't have nearly enough functionality to use it to actually modify repos in anything but trivial ways < 1455469468 965303 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: any good all round GUI? Like tortoisehg is excellent for almost everything with hg < 1455469478 101554 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :not that I know of < 1455469479 685408 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Funnily, tortoisesvn is a really good gui (with only a few problems), I used it a lot, but I think adapting it to git was a REALLY bad idea, due to how the two vcses differ. < 1455469480 636443 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455469509 131473 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: right. Which is why tortoisehg and tortoisesvn actually work very differently, and why both of them are good < 1455469515 381980 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :b_jonas: I don't know about sparse clones. I know about sparse checkouts (well, in the abstract) and shallow clones, but not that. < 1455469546 113763 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455469684 418328 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Chromium has a very complicated build infrastructure that's kind of git + lots of specific stuff on top of it. < 1455469696 247990 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :oh god, chromium build < 1455469700 518534 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :fizzie: thanks, this git worktree is very interesting < 1455469702 852637 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ACTION goes into a corner to cry < 1455469713 469045 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :I've built chromium, it's certainly no joy. < 1455469725 146759 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :it really isn't < 1455469740 256227 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455469794 25410 :zadock!~outsider@81.180.208.252 QUIT :Quit: Leaving < 1455469835 924561 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :coppro: hm, what is the issue with their build system? < 1455469886 659390 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :it's just a complex layered mess < 1455469889 773201 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :It's just complicated and very custom. Plus they have at least two of them in parallel. < 1455469891 588246 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :My main disagreement with the dev model of my co-workers isn't the vcs use though. < 1455469900 237958 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :For large projects I think custom build systems can be useful. For example we use a custom python/cmake mix to generate ninja build files at work, it works very well for our specific use case. < 1455469923 596880 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :fun fact: it's impossible with current tools to build 32-bit chromium without a 64-bit machine < 1455469933 371791 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :coppro: heh < 1455469934 158362 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Ninja is used for Chrome, sort-of. < 1455469940 407475 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :But then we build mixed SDK builds for machines running several nodes with different CPU architectures. < 1455469954 801794 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And need to be able to start simulations and what not as well < 1455469958 821287 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :coppro: this sort of thing is why I wrote aimake < 1455469974 244693 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I wanted to cut out as many of the levels of abstraction that build systems use as is reasonable < 1455469977 627299 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :ais523: aimake would make that problem worse, not better < 1455469981 352222 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :(the memory one) < 1455469995 401114 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: so you don't generate for a lower level build system? < 1455469998 726546 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, using a lot of memory is not an intended or fundamental part of aimake's design < 1455470003 500772 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: nope! < 1455470010 184795 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: hm okay < 1455470013 764244 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :the reason you can't build Chromium on 32-bit is simple: the linker can't fit itself into a 32-bit virtual address space < 1455470013 925445 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what about tup? < 1455470025 423606 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :coppro: WHAT? < 1455470032 654112 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it does use cc/gcc, though, rather than calling the compiler, linker, etc. separately < 1455470034 111565 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :haha < 1455470043 230688 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :right < 1455470048 866458 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what about ar? < 1455470052 368333 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl QUIT :Ping timeout: 248 seconds < 1455470056 884998 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it calls ar directly I think < 1455470059 562309 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Ah < 1455470074 607180 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :or, well < 1455470079 669437 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :atm it doesn't create static libraries, only dynamic ones < 1455470081 8949 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so it has no reason to call ar < 1455470095 538419 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in terms of unpacking libraries it uses nm and ld-via-cc rather than ar directly < 1455470113 201282 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :Firefox: https://groups.google.com/forum/#!topic/mozilla.dev.platform/wLHTg_moymM < 1455470122 62515 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"At the end of last week our Windows PGO builds started failing on < 1455470122 204879 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :mozilla-inbound (https://bugzilla.mozilla.org/show_bug.cgi?id=709193). < 1455470122 204979 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :After some investigation we determined that the problem seems to be that < 1455470122 205000 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :the linker is running out of virtual address space during the optimization < 1455470123 749967 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :phase." < 1455470130 207445 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :"This is not the first time we've run into this problem (e.g. Bug 543034). < 1455470130 349634 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :A couple years ago we hit the 2 GB virtual address space limit. The build < 1455470130 349726 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :machines were changed to use /3GB and that additional GB of address space < 1455470131 239431 :fizzie!fis@unaffiliated/fizzie PRIVMSG #esoteric :bought us some time." < 1455470135 256195 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: why would it unpack libraries? < 1455470154 549543 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :What's the deal with every of these non-C++ languages insisting that if you want to link programs containing that language you need to use their compiler to invoke the linker? How are you supposed to link something that contains more than one of C++, haskell, go, rust, etc? < 1455470160 67232 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: to know which ones to link in < 1455470201 423569 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aimake tries to handle as many steps of the build, including many that are normally done by humans < 1455470206 381587 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and thus have saved me a lot of time < 1455470226 604093 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And even for gcc, why does it need a separate g++ executable, rather than have a switch at linking stage to say that the project contains c++ as well as possibly other languages? < 1455470230 485185 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I just don't get it < 1455470241 541938 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: hm... isn't that specified as dependencies? Like "I need to link to libssl"? Otherwise you would have to unpack every library on the entire system (or that entire cross compilation sysroot) and hope that the symbol name is unique and doesn't show up in multiple libraries (say, ncurses and ncursesw) < 1455470244 126847 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: at least with g++ you don't have to use it, g++ is just gcc that passes the switches needed for C++ by default < 1455470248 429518 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :to stop you having to remember them < 1455470250 273984 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :What gcc command do you even use to _properly_ link C++ and fortran together? < 1455470251 610686 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(there are quite a lot) < 1455470260 145178 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yes, but the problem is that the switches _change_ < 1455470264 943920 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :by version of gcc < 1455470285 784016 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: currently the approach is that you specify a list of libraries you might need (that don't necessarily have to even exist) < 1455470285 956558 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I have linked c++ without g++, but then it stopped working when it needed more switches < 1455470291 304005 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and it gets worse if you use threading < 1455470295 226569 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aimake unpacks just those ones and uses it to figure out which libraries you actually do need < 1455470340 166358 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: I'm not convinced. What happens if you rely on code that runs in static constructors? < 1455470350 785460 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Might only be relevant for dynamic libraries < 1455470366 272934 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Since that won't work anyway in static libraries < 1455470367 464209 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: it's not like it links only part of the library < 1455470367 606645 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it links the entire library < 1455470374 730316 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :just relies on symbols to figure out what to link < 1455470377 710596 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :especially in terms of object files < 1455470390 728001 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: unless it is static, in which case ld will only pull in the required object files < 1455470391 410294 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But I think gcc is improving in thise respect: they've actually added a single switch that means you want to use posix threads, rather than having to use various -l and -D stuff, and getting mysterious problems at runtime if you mess them up. < 1455470392 918717 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aimake needs to know that a symbol comes from a library, so that it knows that it doesn't have to look for it in object files < 1455470408 470306 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I mean, suppose I have foo.c and bar.c < 1455470414 526442 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :-pthread < 1455470417 477673 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :do I link them together, or are they meant to be separate? < 1455470428 941580 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :answering this question may depend on whether bar.c defines symbols that are also defined in a library < 1455470430 12193 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: also it sounds like aimake won't scale well if it has to track all the symbols. Not to large C++ projects anyway < 1455470440 229790 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it tracks all the symbols, all right :- < 1455470443 129460 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :* :-) < 1455470452 898697 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it may potentially have scaling problems; it uses a lot of memory as it is < 1455470484 225045 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yes, but I'd like to set which parts of my code I want to link deliberately, rather than accidentally pulling stuff in because I use a symbol < 1455470501 500895 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: so aimake might work well for nethack where the dependencies are all messed up already < 1455470511 234597 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but I don't want to use that approach in my projects < 1455470514 45344 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: I have seen ld at work (keep in mind we link everything statically for release builds, since we mostly run one program per node) use several GBs of RAM. < 1455470518 428826 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't see why you'd want to waste time doing a job yourself when a computer can do it faster < 1455470521 99731 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I can't imagine using aimake there < 1455470540 445875 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And that is not work link time optimisation either < 1455470552 7497 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :fizzie: do you remember how to turn on flash local storage in chrome? < 1455470577 49541 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: true. Do you know ld can do that for you though? At least GNU ld < 1455470582 66204 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: my main problem with the dev model my co-workers are using is that they're always building one huge executable containing everything, full of stuff you can't compile half the time because some co-worker messes up something in the part of the code you don't need, and full of code that writes past the end of their arrays or through stray pointers < 1455470582 663653 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: -Wl,--as-needed < 1455470602 267086 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :whereas I want to build in a unixy models, experimenting with a small executable containing _only_ the code I need, nothing more < 1455470613 39386 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so that when I get an error, I know it's somewhere in the code I did link in < 1455470619 812154 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not in some unrelated part of someone else's code < 1455470621 258125 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: ... that is just bad code that crashes? < 1455470621 690197 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: err, suppose your project has two files that contain functions with the same name (common examples: main, yyparse) < 1455470631 27311 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ld isn't going to magically figure out which one you wanted to link < 1455470639 516187 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, but it's typically bad code in stuff I'm not currently working on, < 1455470640 767357 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :aimake can, but it requires a lot more analysis of the entire project < 1455470649 253380 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which stops concentrating on my work all the time < 1455470657 812412 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: which is why you list files beloning to that program (hopefully everything under a specific directory tree?) and potential dependency libraries < 1455470670 939007 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so I do work on stuff in separate small executables for al library with a sane small interface, < 1455470679 632071 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and then integrate that library into the big code, < 1455470682 814585 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: mixing the source of multiple programs in the same directory is just bad code IMO < 1455470691 24038 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: what if they share some files? < 1455470701 333436 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so that MOST OF THE TIME, when I'm not doing that integration work, I don't have to headdesk on all those segfaults and can just DO MY WORK < 1455470704 431264 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: a common library (.a or .so) < 1455470705 346239 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in NetHack's case we're building multiple programs, but many files are shared between many program < 1455470707 373426 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*programs < 1455470714 393401 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :often including header files, which you can't put into a library < 1455470726 326746 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: and structure the source code based on that library layout. < 1455470738 762007 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it would be nice to organize it in such a way that we could have separate libraries and code layout but it'd be a lot of work < 1455470760 994659 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: um, so the library has a source and an include directory? And when you link a library you also pull in the public include directory in the include path? < 1455470770 420182 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And make that pulling in transitive if you want < 1455470779 453052 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :b_jonas: sounds like a good way to ensure more eyeballs on all that bad code ;-) < 1455470821 359438 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: I mean you could easily end up with 5 or 6 layers of nested libraries like this < 1455470825 221250 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: also this allows each library to have it's own unit tests or quickcheck style tests easily < 1455470844 171256 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also some of the files are generated < 1455470846 805897 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: not really. somehow it always turns out such that everyone else is running the same big framework thing with exactly the same configuration in the same very small input files and stopping it after two seconds, whereas I run it with various options on various inputs and actually wait for it to finish, and so I get all the segfaults and they don't < 1455470855 711592 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: and their code is BIG < 1455470859 120024 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :they like frameworks < 1455470873 218293 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and yes, I also make mistakes, and write code that doesn't work or crashes < 1455470880 763728 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: yeah, and? I think we have 50+ library projects at work. Plus a library for each with mock/dummy classes of key interfaces it exposes. Plus a unit test project for each. < 1455470882 87239 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but still, that just doesn't work for me as a dev model < 1455470906 683391 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: and I don't see the issue with generated files? < 1455470918 281146 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :A proper build system should be able to handle that < 1455470920 353836 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :This way, I still get all the segfaults, but my work time is separated to times when I can actually work on my code, and times when I'm integrating stuff and getting the segfaults and trying to get others to fix them < 1455470934 212805 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: well, aimake can, most build systems can't though < 1455470936 935682 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: for example, add_rule(.yy -> ...) or something like that < 1455470977 479294 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And it's not only segfaults, it's also a lot of times when they get the build system in a state where it doesn't work from a clean state but works on their machine where they never delete the previous build products. Which is, by the way, something that aimake avoids. < 1455470987 385915 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: so the problem is with dependency tracking < 1455470994 625666 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: the one I use at work can. A custom system built on top of cmake, with some python parts too. Though the "handle file extension" part is pure cmake iirc < 1455471005 292675 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Seriously, at one time they removed an entire library but still depended on it, and it worked on their machines because they didn't remove the built version of the library. < 1455471015 454563 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :there are two restrictions on dependencies: a) a file can't be built before its dependencies are; b) if a dependency is rebuilt, the files it depends on must be rebuilt < 1455471019 371236 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't remember the details. < 1455471019 847979 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :most build systems handle b) but not a) < 1455471062 127553 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: hm b is wrong, you means "the files that depends on *it*" surely? < 1455471067 89827 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Or they have undocumented local (not committed) modifications on their copy of the code that makes the stuff build; < 1455471071 155099 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :also... this is a case of recursive make failing isn't it? < 1455471080 229010 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: err, yes < 1455471082 585798 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :or quite the opposite, they check in local modifications they shouldn't and that breaks the code everywhere but on their systems. < 1455471089 712731 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: Which is why you generate a single layer of build system that knows the entire tree < 1455471090 694023 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also this fails even in a nonrecursive make, unless you write the dependencies explicitly < 1455471107 499820 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be JOIN :#esoteric < 1455471110 801179 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Basically the lesson I learned is that the best way to work with a team is to not work with a team but work separately most of the time. < 1455471111 7933 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which is something that is incredibly tedious and errorprone and almost all build systems do themselves nowadays < 1455471111 659754 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :not really? GCC exports dependency info using -Msomething iirc? < 1455471120 199196 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: the -M method does not handle a) < 1455471147 349250 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :because it relies on the file building successfully, which it can't do if its dependencies haven't been built yet < 1455471194 272958 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: well that is why you need your build system to set up that any custom build steps of a target (defined here as "executable/library/dynamic library") that generates headers should be run before building other sources from said target < 1455471227 503535 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what if the custom build steps require other parts of your project to be built first? < 1455471262 904732 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: the problem is that in nethack, the dependencies of the part that generates headers is really messed up < 1455471269 109309 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: then it needs to list that dependency/have a dependency extractor for that file format? I can't see how you could avoid that. < 1455471282 123879 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: fair enough < 1455471286 681532 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :like, it depends on a header from which it can use only half of the macros, because the other half needs the header you're generating, but you can never tell which macros you can actually use and which you can't, < 1455471303 932638 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: aimake first checks all the dependencies of everything, then builds as much as it can < 1455471311 238128 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so at one point there was a circular dependency in the whole thing, but the build system didn't notice because people never deleted the generated headers, < 1455471315 746739 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if any custom build rules become runnable as a result then they're run < 1455471318 663941 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well, that is just bad design, even excluding the build system issues < 1455471318 806243 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :at which point ais523 had enough and wrote a customf build system < 1455471324 607214 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :repeat until everything is built < 1455471325 590931 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, it is < 1455471332 864733 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: but nobody has time to clean it up in nethack < 1455471338 451175 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: parallel make I hope? < 1455471351 281768 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it was designed back when it was made sense, on machines with small memory where you want to precompute stuff like monstr < 1455471357 747881 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: a circular dependency is really easy to introduce by mistake and hard to detect < 1455471358 943905 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :most of it should be removed < 1455471388 792840 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: currently aimake doesn't handle parallel make, the problem being that the bit that parallelizes easily (actually running cc, ld, etc.) isn't the most timeconsuming bit < 1455471398 565179 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455471399 487546 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it spends about as much time calculating the build as it does actually building < 1455471400 641158 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I spent an afternoon at work fixing a cyclic dependency between libraries, which only worked since no one tried to build them as dynamic libraries earlier. Also wrote an error checker to detect that in the future (thankfully our build system exports a lot of meta data as YAML files, so that was easy) < 1455471410 295707 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I have plans that would make build calculation parallelisable too but they'd have to wait until aimake 4 < 1455471424 753971 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: ah... Yeah you use C not C++ < 1455471432 820895 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :People at work add strange things to the build stuff, but they haven't tried to add headers dynamically generated yet, luckily. < 1455471434 57606 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :thank god for distcc is all I have to say on the matter < 1455471440 795443 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Oh and ccache < 1455471446 276305 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: you do know that a cyclic dependency between libraries (either static or shared) works just fine on Linux, right? < 1455471455 455494 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: ccache hardly makes any difference on NetHack 4 < 1455471459 616227 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Without ccache still takes 40 minutes to build a clean tree at work... < 1455471466 99826 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in general, ccache should be a no-op if the build system is well-designed < 1455471485 962979 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :With ccache (and everything in cache) + CCACHE_HARDLINK=1 it takes basically 30 seconds < 1455471489 920714 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also you shouldn't be building from clean trees anyway; in a correctly designed build system doing so should produce the same result as building from any possible dirty tree < 1455471503 237619 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if you're using ccache + a "clean" build you're really just doing a no-change dirty build < 1455471515 286390 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :thus the 30 second time is very misleading < 1455471515 691601 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: One problem I had to debug at work years ago was symbols accidentally defined twice, once in a dynamic library, resulting in strange segfaults at runtime. Can aimake help find those problems? < 1455471537 646518 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: I'm not sure, it may be that it finds some but not others < 1455471539 404504 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: clean here as in "I changed a core header in the lowest level, now waiting for 9000+ C++ files to rebuild" < 1455471543 346389 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it could probably be made to find them though < 1455471552 462420 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: and 30 seconds is basically the link time < 1455471571 682086 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: ah right, in that case it's a case of your build system failing to detect that the header file change doesn't change anything at a lower level < 1455471591 259009 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in my experience normally a header file change does change things elsewhere, though, even if it's just __LINE__ directives < 1455471594 988729 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: oh it did change everything. But I had to revert the change, and that is when cache saved me < 1455471609 669275 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: The problem in this case was actually that the dynlib came in binary form only, but I have also seen duplicates of c source files or duplicates of h files in the tree at some points. < 1455471612 933797 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh I see, ccache caches old versions too? that's functionality I hadn't thought about < 1455471645 988729 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Also, headers with generic names clashing with headers in the system or dependencies. < 1455471650 923733 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: aimake does catch duplicate c/h files; it only complains if the situation is symmetrical enough that it can't figure out which to use < 1455471653 909844 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: ccache caches up to a set limit in GB of object files, using LRU eviction to evict some percentage when it hits the limit < 1455471663 617327 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :At least these days they don't give stupid generic one-word names, I got them to stop that. < 1455471669 121775 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the generic name header problem actually happens in NitroHack and thus NH4 (magic.h) < 1455471672 453555 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: that means with a sufficient limit (IIRC I use like 20 GB?) < 1455471677 65030 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so I had to adapt aimake to handle it < 1455471677 929898 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :it can store old files < 1455471690 430352 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But I should try to revive that old utility I wrote that searches for duplicate headers and duplicate source files and also unused source files and unused headers. < 1455471739 382565 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: I think the core issue here is that nethack has a messy source tree, but not a very large one. Still large enough to be painful to clean up < 1455471745 793176 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: We've had both actual duplicates of source files, and just different files with the same name. < 1455471781 804754 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: Sure, nethack has lots of generic names, but where it hurts me a lot is the ton of macro names. I should at least convert most of them to enums and inline functions at some point, and later rename some of them < 1455471802 236430 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: While I work on a source tree that contains upwards of 10k C++ files. And there are parts using boost (oh god). And have to build for three architectures since the target embedded system has multiple CAN/ethernet nodes that run different CPU architectures. < 1455471806 847178 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :So very different use cases < 1455471864 304911 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Not using proper library separation and so on in our case would be unmanageable, even using something like aimake. Also we have fairly few generated files. Less than 50 over that entire tree < 1455471897 52551 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I would actually love C with namespaces as a language. < 1455471905 847400 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And properly namespaced macros < 1455471926 912886 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: you can use C++ as C with namespaces if you want < 1455471945 862765 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't want to use it that way, but you can < 1455471949 66050 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: technically not, since it wouldn't let me name a variable "new" < 1455471949 647599 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's a multi-paradigm language < 1455471956 419758 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: eww. < 1455471973 477398 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(the ruby source code is full of variables named klass) < 1455471975 910402 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well just pointing out they are different. I'm not suggesting you do that :P < 1455471979 631525 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :hah < 1455471995 76228 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: and variables named new isn't the biggest incompatibility < 1455471996 470572 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :The real issue with C++ is templates. And the code bloat and compile time slow down they result in < 1455472002 803256 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :indeed < 1455472008 594330 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :certain conversions not being allowed in C++ is a bigger practical difference < 1455472024 259896 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Oh, that's right, void* stuff < 1455472032 841677 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :you would have to cast malloc all the time < 1455472040 3759 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: I believe "class" is used as a variable name in NetHack too < 1455472047 921059 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: no, IMO the real issue with C++ is that people learned it before it became a sane language, and are still learning it from bad sources, because it's popular, so there's a lot of people writing bad C++ code < 1455472073 217087 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: and since C++ wants to be really compatible with everything, it allows you to write a lot of bad code easily < 1455472073 980029 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well... STL is pretty bad in parts IMO. Boost is of course much worse than that < 1455472102 491701 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I do like the C++ standard library AND lots of parts of boost. not all parts, mind you, but I don't have to use all of it, I only use some modules of it < 1455472113 209672 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: boost mpl is evil. < 1455472121 75894 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And I like C++ in general a lot < 1455472153 619921 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: also the idea of separate header sources, rather than C++ modules exporting functions... Having to duplicate a lot of stuff between c/h < 1455472168 274212 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Compare this to a language like python, java, C#, pretty much anything < 1455472189 333352 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, but every language that tried to solve that so far ended up with no separate compilation with circular dependencies, so IMO it's much better than any of the alternatives < 1455472203 838724 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :hm < 1455472206 228812 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: look at all the research languages, ghc, and rust, they don't handle separate compilation properly < 1455472214 105560 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm true < 1455472216 216389 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :It's easy to claim no headers if you compile everything together < 1455472230 976929 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :How does .NET do it? < 1455472234 4523 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :There _might_ be a solution, and some of the C++ module people are trying hard to find it < 1455472237 3785 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but it's not easy < 1455472279 690174 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Compiles an assembly at a time? < 1455472282 666011 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I guess? < 1455472289 816941 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And it gets much harder to solve if you don't want just C stuff, but templates and/or a dependent type system. < 1455472296 524077 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :true < 1455472336 80042 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: how does haskell do that when working with polymorphism across packages? < 1455472344 498949 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Or proper abstractions, which require exporting inline functions in the C sense, that is, functions of which the compiler knows the definition in other modules so it can optimize using them. Can rust do that yet by the way? < 1455472358 161667 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :no idea, never looked at rust < 1455472369 868087 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: dunno about haskell, ask the haskell people here < 1455472400 181239 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455472425 492778 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And the problem is that these compilers with no separate compilation often also make it harder to build projects containing multiple languages. < 1455472429 55848 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :It's still possible, but hard. < 1455472458 843106 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well okay that is true, but mixing most languages is hard. Unless it is C and C++ < 1455472466 681125 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :You can build rust and C together, or haskell and C together, but try to mix multiple of fortran, C, C++, go, haskell, rust, C#, java, whatever together and you're screwed. < 1455472479 707679 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :If you just compromise with proper headers, it becomes easy. < 1455472488 174332 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :You basically have to call FFI to a dynamic library exporting C functions in most languages < 1455472489 735749 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Everything compiles its own code and reads headers. < 1455472501 508039 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, and that's a good thing. The problem is how you link the whole thing < 1455472515 56927 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I DO like the haskell / rust approach of FFI < 1455472529 840084 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which is also mostly C++'s approach < 1455472532 107243 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well, if you use a FFI to load a library and then call functions, you aren't linking per se, you are just doing dlopen < 1455472543 276638 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :having C as a sort of common base everything can call into an export functions into < 1455472547 292970 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :thinking of python here < 1455472566 412658 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(which is also the easiest way to link assembly files into C or C++ by the way) < 1455472588 515055 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: no no, with the haskell and rust FFI, you can link at link time, you don't have to dynamically load < 1455472592 284674 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I haven't done FFI in haskell, and never used rust, so what is that approach? < 1455472603 197071 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I think you can link properly with python too, can't you? I know it can also load dynamically < 1455472674 270354 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well, not really, you can implement modules in C, and then load them. And there is a standard module for FFI. Also there is a separate package called cython, which takes a subset of python with some extensions and generates a C module that calls into python's C API for certain things. < 1455472712 543189 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :But this all uses dynamic .so loading at runtime, triggered by importing a module name that the interpreter finds in the module path as a .so file < 1455472745 870365 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :This is mostly down to python being byte code compiled and then interpreted < 1455472768 567029 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(or JITed from byte code if you use PyPy) < 1455472883 847617 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: basically, C++/haskell/rust maps most of the C type system to part of the C++/haskell/rust type system; and then you can ask that certain data or function types must be represented as in C, and that way access (read, write, call) alien data and functions through pointers, or have alien code access some of your data or functions through pointers; and you can also link import unmangled symbols (variables or functions) that are defined externally (i < 1455472895 692940 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\ and you can also link import unmangled symbols (variables or functions) that are defined externally (in C or other languages), or ask that some variable or function you define must be unmangled, and then other languages can link to it. < 1455472935 12161 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I think something was cut there < 1455472940 194733 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :This still requires you to sort of translate the structure definitions and function signatures to that other language, and explicitly declare some stuff, but it works very cleanly and nicely. < 1455472944 926643 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Oh wait, it repeated a bit? < 1455472955 448100 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I repeated a bit because it got cut < 1455472978 392257 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: the issue with C is that it doesn't export type info, so that means you have to know the proper type in haskell the n < 1455472978 587832 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but I can't tell where exactly it's cut so there's an overlap < 1455472979 717323 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :then* < 1455472991 789947 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Unless haskell can parse arbitrary C headers < 1455473013 25525 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, you have to know the proper types. There's some various help for this, but I don't believe in it much. < 1455473043 148836 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: C headers (and C++ even more so) are way too complicated for parsing this info out in a sane way in the general case. < 1455473057 603668 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: exactly < 1455473085 539726 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :also ... is evil from the typo info POV < 1455473096 298751 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(i.e. printf and such) < 1455473111 12445 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Also, this model is also how you can communicate between C++ code built with different ABIs, through C < 1455473150 220396 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: and C++ with the same ABI if you dlopen. There is no good way with dlopen to not go through a C layer afaik < 1455473198 799158 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Note that C++ has some special cases: data structures with a type that corresponds to C are always represented as in C, you don't need extra flags for that, and on typical ABIs (but not mandatorily in the standard) functions with a signature corresponding to C are also represented as in C, so on those systems you don't need an extra declaration there either, < 1455473212 849251 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so all you need is declaring some symbols as unmangled so they link properly. < 1455473232 892503 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: um.. extern "C".. for name mangling < 1455473235 144382 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: no, you don't need to get dlopen in this. You can just link everything at build time. < 1455473244 52460 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: no I mean for the module case < 1455473249 619461 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: say you want to load plugins < 1455473289 401598 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Then your plugins have to have a C function returning a C++ class or a C struct describing the module. Since you can't easily resolve mangled symbol names afaik < 1455473294 880683 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :not in any standard way anyway < 1455473304 521693 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Oh, and further, this is also how you communicate between C code built with different ABIs, which happens on windows where the msvc compilers have an ABI where long int and long double are of different size than with the gcc ABIs. < 1455473325 627615 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I would assume mingw would use the native ABI? < 1455473343 85677 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(On windows x86_64, long int and unsigned long int are 4 bits with msvc, 8 bits with gcc.) < 1455473361 58392 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :what about long double? < 1455473363 101083 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: no, I think mingw still uses the gcc ABIs. < 1455473366 778880 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :huh < 1455473395 66368 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Also on x86_64, Linux and Windows use different calling conventions. No idea about mingw though < 1455473403 622172 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :different sets of registers < 1455473404 388303 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :4 bits, really now... scnr < 1455473423 949831 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :int-e: typo for bytes I assume < 1455473424 98409 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: long double is always the same as double with recent MSVC (which is, incidentally, a good thing if you don't care about ABI compatibility), but can be sometimes bigger (10, 12, 16 bytes? I dunno) on gcc depending on the arch < 1455473433 287880 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't care much about long double, do I don't know the detauls < 1455473454 546498 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: that breaks MSVC ABI? Fairly sure it used to be that long double mapped to x87 on MSVC before < 1455473473 206057 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :x87 has 80 bit floats, so 10 bytes should be right < 1455473480 392803 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, but that's no problem, since you rarely get into a case when you call functions compiled for linux on windows, or backwards, except with hand-written assembly functions < 1455473487 517825 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :int-e: 10 bytes with 16 byte alignment iirc? < 1455473508 581752 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: wine < 1455473515 63009 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: the MSVC abi breaks at every version basically, though they keep the C abi. But the change with long double was VERY long ago, possibly at the jump between win16 and win32. < 1455473517 961438 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :probably, I was going to say that I don't know about the alignment. < 1455473534 463887 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: yes, but the x87 should die < 1455473541 846599 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: it's no longer useful in the x86_64 era < 1455473547 713392 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's maintained only for compatibility reasons < 1455473557 254002 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: hm really? Will have to check using msvc2005 at work... We have that because of legacy WinCE crap < 1455473557 796034 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it should DIE a well deserved and peaceful death < 1455473561 146838 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :WinCE 5 that is < 1455473566 210848 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(may it die soon) < 1455473568 171823 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I don't know really, sorry < 1455473575 840102 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't know the details of the long double < 1455473580 499546 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :check yourself if you want to be sure < 1455473586 3044 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :yeah I think I will < 1455473589 907712 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and I definitely don't know about WinCE < 1455473594 784979 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :seriously < 1455473599 693551 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: nobody does, and that is part of the issue :P < 1455473601 939356 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :do you have legacy WinCE crap? < 1455473608 627456 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :luckily we don't have that kind of thing < 1455473616 991652 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :we use fairly recent tools most of the time < 1455473619 436739 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I mean < 1455473623 672915 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not really bleeding edge < 1455473627 639696 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but usually not 15 year old crap < 1455473633 927793 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :with some exceptions < 1455473640 623979 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I have used old libraries, but they're GOOD ones < 1455473660 433483 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: we have such embedded devices yes, Also devices using a custom RTOS as well. But they are about to go on "critical bug fix only" soon and then they will be completely phased out in 5-10 years time < 1455473702 723346 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: we have embedded devices, at the more generalized workplace, but I have little contact with them on the projects I work on, and I don't think we have any WinCE devices < 1455473722 28084 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :we have embedded devices running some unix on non-x86 < 1455473732 919723 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so relatively saner < 1455473740 783596 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :still caused some problems, and I don't want to work with them < 1455473743 276261 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I program embedded real time control systems for massive (think 200 metric tons) mining equipment. So I have to deal with all sorts of weird hardware. And CAN buses and what not. But also with code that is relatively error free, because of the issues that would result if it weren't < 1455473758 556259 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I like the modern tools, and don't like the lack of toolset support for embedded devices < 1455473761 634464 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Lots of layers of safety. And safety classed code < 1455473775 634033 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so I like working with the modern desktop computers and servers < 1455473787 463650 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: moving to real time linux now though < 1455473798 184011 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I see < 1455473808 771771 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Luckily I don't work with anything of that sort < 1455473812 791831 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't have that kind of stress < 1455473816 301087 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: mostly x86 and ARM though, except some real low level stuff, which I don't deal with directly anyway < 1455473847 668473 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :"Mostly x86 and ARM" is true here too, I believe < 1455473860 828046 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But I would prefer if it was x86_64 only, no x86_32 and no ARM < 1455473862 428641 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: eh it isn't stressful really. That is what layered safety is. If the lower level modules detect the higher level modules aren't running properly then you cut the power < 1455473871 344702 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I see < 1455473871 532176 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :better than running off a clif < 1455473873 327701 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :cliff* < 1455473874 131011 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Sure < 1455473905 615755 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and certainly < 1455473907 975351 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :oh, I don't do anything 64-bit. Well the dev computers are of course, but no target module < 1455473928 484347 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :We run mostly x86_64 these days, luckily < 1455473947 162095 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But support for x86_64 is still not perfect, some toold or libraries are more easily available on x86_32 < 1455473954 871636 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but that's improving a lot < 1455473960 303497 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :x86_32 is going away luckiliy < 1455473972 475886 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :The code targets stuff like 32-bit 1 GHz dual core CPUs. That can go from -80 to +80 C working temperature < 1455473979 142729 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :With ECC memory and so on < 1455473987 484173 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :There's lots of stuff I couldn't use on x86_32 five years ago, but can now < 1455473995 471091 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :s/_32/_64/ < 1455474006 697025 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: really? On Windows I can imagine yes < 1455474023 315455 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Still I develop in Linux most of the time. < 1455474026 528515 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :So not a major issue < 1455474072 325770 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm I think the old laptop next to me has a failing battery. The battery lamp is blinking green orange orange orange in a cycle instead of charging < 1455474083 933313 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :That is annoying. It is my last computer with a real serial port < 1455474089 614853 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(12 V and so on) < 1455474094 763276 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ouch < 1455474128 902788 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: it has a parallel port too < 1455474150 285641 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :But it is the serial port I sometimes use < 1455474168 808197 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :My current (old) home PC has both. My next home computer might not have either. < 1455474198 96795 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But my father has already had problems with no serial ports and having to use serial port extender USB thingies in some computers he admins. < 1455474228 61181 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Oh the battery is quite hot as well. Damn < 1455474247 696532 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I'm not really a hardware guy, so at work it's other people who figure out this sort of hardware stuff. < 1455474274 330997 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: those doesn't work well if you need to use the serial port pins as GPIO, which is what one device I have does < 1455474279 702582 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Also 12 V < 1455474288 146674 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Since USB uses 5 V < 1455474292 603878 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I'll have to do some hardware stuff for home when I buy my next home pc of course, as in deciding what to buy. But my father and brother can help, they're more hardware guys than I am. < 1455474307 752555 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :kay < 1455474318 124223 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :At work I usually just ask other people for this kind of stuff. < 1455474385 253991 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And I certainly don't try to decide what hardware to buy at work. < 1455474385 463569 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :At work everything is USB or ethernet wrt the development computer and weird special things for the lab. Even the ethernet on the lab is a screwed on connector that is dust and water proof < 1455474443 866771 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I wish I had the ability to decide such. Heh. Too big company for that < 1455474465 704004 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Sometimes I try to give hints about properties that would be useful for the hardware. < 1455474469 761725 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Still that work laptop is quite neat. 32 GB RAM, Core i7. And so on < 1455474494 614100 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Basically the best mobile workstation you can buy from Dell is what we get, new one every 3 years < 1455474535 914068 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Like, "since you have to buy an SD card reader for this project, why don't you buy one that also handles micro SD cards, see, I have this one here for personal use that cost only like 1200 forint and does that" but no, they had to buy the more expensive one that doesn't do micro SD. < 1455474555 606918 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: what on earth is forint? < 1455474562 396357 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't try to mess with the more complicated hardware, like the big server machine with lots of disks and stuff. < 1455474565 691674 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: HUF currency < 1455474569 721652 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :HUF being? < 1455474573 947178 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Hungarian forint < 1455474576 168809 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Ah < 1455474578 407327 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :the currency used here < 1455474585 182147 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I thought Hungary used Euro yeah < 1455474592 860329 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :hm < 1455474602 948003 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :no, and hardware is measured in dollar instead of euro anyway < 1455474613 627378 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :weird < 1455474616 712688 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :because it comes from China where people use dollars < 1455474624 694096 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :uhhh < 1455474630 683070 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :no, half-seriously < 1455474640 727336 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: also, I haven't seen a micro SD that didn't come with an adapter to SD anyway < 1455474644 283797 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :you order the hardware from Asia, and they sell it in dollars, not euros < 1455474650 271086 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I thought china uses RMB < 1455474654 303527 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not only China, but also Korea and Taiwan etc < 1455474664 372332 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :oh, internationally < 1455474667 210318 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :eh? korea uses won < 1455474668 583328 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: exactly < 1455474676 628013 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Really? < 1455474678 754740 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :coppro: in international sales, they generally use USD < 1455474681 425081 :coppro!raedford@taurine.csclub.uwaterloo.ca PRIVMSG #esoteric :oh, sure < 1455474682 920482 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :not always, but often < 1455474690 223569 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :they price stuff in USD < 1455474701 863104 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so if I buy stuff on internet that's not from Hungary, it can be EUR, USD, or GBP < 1455474745 740168 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :luckily all the available payment methods handle the monetary conversions < 1455474759 777660 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: For us it is all SEK and either custom made hardware (for the product, it has to be IP classed and handle extreme temperatures, salt water running over the display and so on), or standard desktop/servers/switches/whatever from Dell/HP/Cisco and so on < 1455474783 247526 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I use SEK only when I physically travel to Sweden < 1455474784 242622 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :Oh, I know! I'll find alist of the most used maybe 500 hcaracters in simplified chinese and do those < 1455474790 358451 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: well I live here so :) < 1455474837 178042 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: and it is a Swedish company that makes that rugged hardware for us. < 1455474837 410778 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: fix the presentation of Shavian letters on the test page yet so that they appear in only four lines, not five, so the lowercased version of a letter is two lines below the uppercased one < 1455474899 109818 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I guess working on a large company making very small series of very expensive machines puts a different spin on eveything < 1455474902 270353 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :everything* < 1455474939 896338 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Where each machine is mostly unique and a customer might pay for having a function only they will ever use developed < 1455475012 926179 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: we sometimes do that too, but not _that_ expensive, not mining equipment, only like a large server or two plus lots of cameras; and some of the work does the opposite, with small embedded devices produced in thousands < 1455475045 65801 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I think a single display for our machine might cost ~20000 USD or around there. < 1455475058 22792 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: ah, so you retro fit mining machines then? < 1455475061 624966 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Right < 1455475074 875599 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :err < 1455475077 963442 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :huh no < 1455475082 723732 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it was you who mentioned mining machines < 1455475085 84489 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :missed the "no" < 1455475087 741158 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :"not" < 1455475088 612531 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which I assume are expensive < 1455475098 116603 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: yes, millions USD < 1455475117 286062 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :whereas we put lots of cameras, plus servers communicating with the cameras < 1455475122 874898 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I read "mining equipment, only like a large server or two plus lots of cameras" missing the "not" < 1455475125 388960 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and sometimes other stuff < 1455475128 484502 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Thus I eneded up at "retrofitting" < 1455475129 442986 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :right < 1455475134 517536 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Because there are companies that do that < 1455475151 923562 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Take a hydralic dumb machine and add in some screens to help them navigate it or such < 1455475202 86883 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: speaking of cameras, you wouldn't believe how expensive a rugged PTZ IP camera can be < 1455475212 75117 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(I assume you know what a PTZ camera is?) < 1455475216 676424 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :well, some of what we do might count as retrofitting in that we're using cameras in a way they're not designed and that they don't support well < 1455475223 775269 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :yes, I know how expensive they can be < 1455475234 379326 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :we have some expensive ones < 1455475256 149264 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: We have some Bosch one that cost 50 000 USD. For rugged outdoor use. I guess it is PTZW since it also has a wiper you can control < 1455475292 435337 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Never seen a better optical zoom than that though. Ever < 1455475302 417241 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :we have everything from cheap webcameras costing like 8 dollars to expensive PTZ cameras costing ten thousand USD or more < 1455475342 841332 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :as well as DLSR cameras, stereo and TOF cameras, and more < 1455475347 228198 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Heh < 1455475358 869977 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Only a few cameras in our case. All rugged < 1455475384 608786 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Sounds annoying having to deal with so many different models < 1455475408 474772 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :It is bad enough to deal with like 3 different models with their own quirks < 1455475414 374990 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Various ages too, from old analog PTZ and fixed cameras, up to stuff so modern you can't even buy it on the market yet < 1455475423 353398 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Neat < 1455475429 560212 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :bbl, making food now < 1455475450 752689 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Yes, and their control all sucks, because we're using them in ways they weren't designed for, so their built-in software or firmware doesn't support what we want < 1455475484 431855 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But some suck more than others < 1455475489 323315 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: oh? I can't see how a PTZ can be that complicated really < 1455475504 772259 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Just some commands to control some actuators < 1455475512 965650 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Some of them at least have an interface that's well-designed for its purpose, some don't manage even that < 1455475552 575371 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: given what you said about co-worker code quality that doesn't surprise me < 1455475576 891509 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I fixed the presentation of deseret and shavian < 1455475581 674302 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I have slowly realized that most developers don't really know what they are doing < 1455475594 772672 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Which is what causes terrible code < 1455475612 372418 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, commands to control the engines, but not enough commands to find out where the engines actually moved, or when they actually stopped moving, and since it's hardware it's all nondeterministic; and even the non-PTZ part, like the focus and sensitivity and image compression settings can be hard to control < 1455475617 360661 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: thanks < 1455475621 799145 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yes, that's true < 1455475624 922663 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Note that this will probably include myself three years ago, as well as myself three years from now talking about the current me < 1455475625 680959 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :XD < 1455475640 79881 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: yep < 1455475642 528713 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :exactly < 1455475646 911108 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it includes me as well < 1455475666 204110 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which is one more reason against the big framework containing all the code, including old code < 1455475675 604004 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I do feel I'm above average at least. I would never commit something unless it passes valgrind for example. < 1455475688 904153 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: ah nice, that's much better for Deseret, thanks < 1455475694 551676 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: you've even separated them < 1455475713 853703 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :yah, it was silly to have them in one section < 1455475715 71755 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: why don't you also split the kana from the bopomofo to separate headings? < 1455475760 211806 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: problem is, sometimes you need frameworks, otherwise you just do the same thing over and over. Also coding system level C++ without frameworks is hell. How are you supposed to do threads with just pthreads? You really need a message passing layer to be able to do C/C++ threads without going insane < 1455475777 116391 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(the kana long vowel mark has a funny mostly unique status in unicode, where it counts as both kana and punctuation but not a letter) < 1455475801 671356 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: certainly, but when they make every bit of their code depend on everything so you can't test it separately, that's bad < 1455475804 106190 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: and how do you do inter-node communication without a common language and framework for it < 1455475832 227814 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: that is what message passing is for. You can test it by making a unit test or quickcheck style test send those messages instead < 1455475842 812769 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :That and not dealing with shared memory < 1455475844 59918 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :done < 1455475859 415472 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: that might be better than what they're doing < 1455475868 862804 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I also hate how they're often using threads completely unnecessarily < 1455475876 711690 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :everything is put in a separate thread, even when it needn't be < 1455475878 55725 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :which is also the reason to not do nethack style code, but cleanly layered libraries < 1455475882 775582 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :when that just complicates everything < 1455475903 916653 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :It would be much better to put everything in one thread at the start, then threadify only the stuff where it actually helps. < 1455475919 262463 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I would suggest writing classes that can handle messages, then you instantiate them on a specific message handler (which is basically the same as a thread) < 1455475935 21224 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: great, thanks < 1455475936 399605 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :With broad cast events and proper routing it doesn't matter where the class is < 1455475936 558977 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I should probably rearrane the kana into gojuon order < 1455475938 475347 :Lord_of_Life!Elite12246@gateway/shell/elitebnc/x-ljotcyvazshyqahq QUIT :Excess Flood < 1455475942 279084 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: what's the status of the hangul? < 1455475956 246707 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: And you need threads for proper priority in a real time system :P < 1455475963 734466 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :Still can't seem to generate them very well < 1455475979 91307 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :but i'll get to it eventually < 1455475988 657971 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: how else will handling the CAN adapter interrupts happen when they need to < 1455475991 207958 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: aren't the kana already in that order? < 1455476016 377080 :Lord_of_Life!Elite12246@gateway/shell/elitebnc/x-gtkchypyxglcfluy JOIN :#esoteric < 1455476017 767531 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: I would expect 50-100 threads in a normal real time application < 1455476025 10391 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :That includes some thread pools < 1455476041 729286 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Less in a non-realtime application < 1455476048 105628 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And a lot more thread pools in that case < 1455476048 571184 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: or do you mean move the small kana out of the kana in the main grid? < 1455476060 546820 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :\oren\: designing a font? < 1455476085 793892 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :bbl, actually making food < 1455476187 869073 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: luckily we're not making realtime applications, so that's not a problem, < 1455476200 420361 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but we are doing a few things where threading can help < 1455476206 314645 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :IF used properly < 1455476236 35353 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but very often, processes would work better, but they use threads instead. < 1455476262 555615 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Like, when something has a very small interface, it can be moved to a process easily. < 1455476271 746667 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I have already done some of that. < 1455476308 772345 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Done video encoding in a subprocess, since video encoding has a small interface with the rest of the code: it only has to get raw video frames, plus a few metadata at startup. < 1455476327 986104 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Works well enough, once you figure out some ugly details. < 1455476344 139994 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Including some Windows-specific stuff. < 1455476410 554805 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :It was like, eww, after touching this source file, wash your hands for an hour to get the Windows API stuff off it. < 1455476453 964296 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But then, I'm also not perfect, I write lots of badly designed code too. < 1455476460 707152 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I should try to improve myself. < 1455476464 206928 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :All the time. < 1455476467 367023 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I've arranged the hiragan < 1455476506 747319 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: ah nice < 1455476530 251553 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: do you have a script yet to find characters accidentally missing from the demo page by the way? < 1455476548 243395 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: also, shouldn't all the small kana be separate from the main table? < 1455476591 570994 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: thankfully I almost never deal with OS specific things at all, since we have targeted so many different systems across the years (WinCE, custom RTOS, simulator on Windows, and more recently Linux (both simulated and target)) that there is a good abstraction layer already < 1455476617 303262 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I rarely have to deal with it either, < 1455476620 575159 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And we don't create threads or processes after startup. < 1455476625 771509 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :because I work on parts of the code that doesn't touch it usually. < 1455476636 677641 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :And only allocate from memory pools after that point. < 1455476864 746476 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: oh and the way you turn off the application is cutting the power. Take that file system! XD < 1455476886 966016 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :(no we don't use a normal linux file system) < 1455476939 509234 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: um, that's sort of how it works here too. Not literally, but I rarely see the "framework" thing not segfault somewhere at termination, since people always interrupt the program early in testing, so they don't notice the segfaults at completion. < 1455476967 124026 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :So eventually they just decide that segfaulting at termination is sort of a feature, and just _exit without trying to shut down. < 1455476985 970575 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ouch < 1455476995 923978 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Or try to get stuff shut down in the proper order so that the important data is saved _before_ the segfault. < 1455477015 79739 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Your approach seems more haphazard though < 1455477021 779841 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Rather than planning for it < 1455477073 895018 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Yep. < 1455477077 120159 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: also that makes memory leak testing annoying I would imagine. < 1455477086 94545 :ais523!~ais523@unaffiliated/ais523 QUIT :Ping timeout: 276 seconds < 1455477091 268034 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :You could still do it on the unit tests < 1455477097 879261 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :There are some memory leaks, sure < 1455477114 440006 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but usually not huge ones, because leaking entire images every frame many times per second is quickly noticed < 1455477121 487889 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I know, I've leaked images before < 1455477125 134029 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :hah < 1455477140 216390 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's hard not to notice since Windows, like, becomes unresponsive and has to be rebooted when a program starts to use too much memory. < 1455477175 264021 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :But leaking smaller data structures can be ok, and sometimes it's not even worth the dev time to clean up if that's the only problem with the code. < 1455477192 151855 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I mean, like, keeping a smaller structure for every frame that you free only at the end of the whole stream. < 1455477210 173754 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: yeah windows is terrible when swapping (or page filing I guess) < 1455477633 782805 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: ah, better < 1455477642 878806 :Lord_of_Life!Elite12246@gateway/shell/elitebnc/x-gtkchypyxglcfluy QUIT :Excess Flood < 1455477667 660705 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: though you can still put the small kana in columns on the left, but it works this way too, doesn't really matter < 1455477766 375591 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: and now the hiragana and the katakana are nicely arranged exactly the same < 1455477769 816712 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :looks good < 1455477910 799703 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: why is ヽ under the Katakana heading but ゝ under the punctuation heading? < 1455477935 633238 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455477936 316926 :Lord_of_Life!Elite12246@gateway/shell/elitebnc/x-txfcofbfugggrdrz JOIN :#esoteric < 1455478090 557179 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl QUIT :Ping timeout: 260 seconds < 1455478115 294306 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455478550 496049 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :maybe I'll do the math fraktur < 1455478560 239268 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :yah that will be awsom < 1455478728 475900 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455478846 475228 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: do hangul < 1455478901 865376 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Even if I like the subversion model, I'd still like a distributed version of it. And I have been thinking if it was possible to extend subversion to become a dvcs. And I think it's partly possible, although maybe not completely, and certainly not easy to implement. < 1455478939 141263 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I feel I must support distributed version control in principle, since it's the only way humanity can ever expand to more than the Earth-Moon system, to farther areas with ping time greater than a minute or two. < 1455478996 30781 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :You can't have all writes going through a central server if it takes hours to do that. < 1455478996 492337 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be QUIT :Ping timeout: 272 seconds < 1455479017 297534 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :You need at least a server per planet and merge between them. < 1455479186 131852 :Treio!~Treio@87.244.233.250 QUIT :Ping timeout: 240 seconds < 1455479402 481011 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :As someone whose first VCS was mercurial, non-distributed VCSes feel very clunky to me < 1455479812 734467 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :FireFly: is mercurial that old? < 1455479820 519834 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I thought it was too new to be able to be your first VCS < 1455479847 671461 :oerjan!~oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1455479871 45957 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :It's not that old; I'm just kinda young < 1455479886 154752 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :I guess < 1455479904 311275 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :Apparently Mercurial is from 2005 < 1455479910 140411 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :I probably used it first in 2008 < 1455479919 502271 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :mercurial and git are approximately the same age... they were both born out of the bitkeeper linux debacle < 1455479962 487334 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: really? < 1455479976 227449 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :how was mercurial born from that? < 1455480002 727458 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :http://lkml.iu.edu/hypermail/linux/kernel/0504.2/0670.html < 1455480064 39101 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :int-e: I see < 1455480103 90380 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :Because several people worked on a replacement for Bitkeeper. Mercurial lost at the time; my impression was that Linus and a few others didn't trust Python to be fast enough. < 1455480160 811140 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm < 1455480190 227733 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Didn't git win simply because it contained exactly what Linus wanted? < 1455480307 629019 :Alcest!~alcest@69.64.40.177 QUIT :K-Lined < 1455480314 813133 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :Yes, sure. < 1455480404 856856 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Do you know if it is possible to use SDL and Xlib together in the same program? < 1455480479 743475 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455480489 77323 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :That and other people (like Petr Baudis with cogito) made git usable for ordinary people. < 1455480497 631832 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455480539 530710 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :zzo38: It is possible. < 1455480560 872034 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :also, maybe mercurial got (sort of) sane branching only later than git, didn't it? < 1455480645 275963 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it started out as one branch per repo if I understand correctly < 1455480687 537772 :atrapado!~atrapado@unaffiliated/atrapado JOIN :#esoteric < 1455480699 142401 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :pikhq_: What considerations must be done in order to do so (if any)? < 1455480814 997084 :pikhq_!~pikhq@2601:647:4b00:63aa::f63 PRIVMSG #esoteric :I don't know of any, really. SDL will happily hand you its X11 display or window and you can do things with it. < 1455480845 517026 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :b_jonas: I don't really know; it's clear that mercurial didn't implement named branches from the very beginning. It looks like it was implemented in August 2005: https://www.mercurial-scm.org/pipermail/mercurial/2005-August/003318.html < 1455480905 126462 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :But I'm not sure how useful this information is... < 1455480949 324320 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :And is it true that mercurial has three different and mutually incompatible branching mechanisms? < 1455480965 696028 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :One being the one branch per repo, and I don't know what the other two is. < 1455480972 311320 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Or is that just a malevolent anti-hg rumour? < 1455481092 366927 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Basically I want to use SDL only for audio and for endianness-dealing. < 1455481236 185663 :variable!~variable@freebsd/developer/variable JOIN :#esoteric < 1455481253 713065 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`wisdom < 1455481262 502301 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`wisdom < 1455481286 92084 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :django/Django is a giraffe. < 1455481287 330302 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :month/Month is a misspelled Moth. < 1455481353 409335 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :b_jonas: I can't really answer that; my mental model of how mercurial works is flawed. But the first way is something you can do with git as well. There's a difference between branching that happens because you have local commits and pull in remote commits; to me this is a UI nightmare because the two resulting ends don't have predictable names (one is the "tip", while the other is just... < 1455481359 482280 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :...dangling?); most of the time "hg merge" does what I want (merge the local and local ends of the branch). I have not played with named branches at all in mercurial. < 1455481367 263102 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :ACTION feels more comfortable with git. < 1455481381 458942 :idris-bot!~idris-bot@dslb-084-062-092-130.084.062.pools.vodafone-ip.de JOIN :#esoteric < 1455481417 174588 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I see < 1455481746 493999 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric : `le/rn fetch curses function that fets a char. see fetch(3X) for more info <-- AAAAA i swear this channel is getting stupider < 1455481758 288285 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? char < 1455481759 569259 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :char? ¯\(°​_o)/¯ < 1455481784 246765 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1455481816 810336 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`le\ < 1455481817 619692 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: le\: not found < 1455481819 865358 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`le < 1455481820 602809 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: le: cannot execute: Is a directory < 1455481834 291168 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? int < 1455481835 161112 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :int? ¯\(°​_o)/¯ < 1455481836 458925 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? long < 1455481837 310439 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :long? ¯\(°​_o)/¯ < 1455481837 643115 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? short < 1455481838 520676 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :`` ls le/rn < 1455481838 662961 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :short? ¯\(°​_o)/¯ < 1455481839 534419 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :le/rn < 1455481839 940076 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oerjan: at least le/rn is advanced enough that that command didn't work < 1455481840 251078 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? double < 1455481840 915937 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :so much for the idea of having a `le rn that works as people expect ;-) < 1455481841 177764 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :double? ¯\(°​_o)/¯ < 1455481848 82353 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :shachaf: at least. < 1455481884 621885 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: What's the issue? < 1455481915 464211 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`le rn foo < 1455481917 946351 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: le: cannot execute: Is a directory < 1455481919 279460 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`mkx bin/le//echo le < 1455481923 64689 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :bin/le < 1455481923 717487 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`le rn foo < 1455481924 685577 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :le < 1455481930 7039 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :`rm bin/le < 1455481932 389451 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455481943 633962 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`le/rn < 1455481944 338422 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455481962 283913 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :okay, I'm confused. Why did we have bin/le/ ? < 1455481983 471635 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :it's meant to be used as le/rn foo/this is a description for foo < 1455482002 113239 :J_Arcane!~chatzilla@37-219-207-242.nat.bb.dnainternet.fi JOIN :#esoteric < 1455482002 913806 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: We did? < 1455482022 597342 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`` echo $PATH < 1455482023 388189 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/hackenv/bin:/opt/python27/bin:/opt/ghc/bin:/usr/bin:/bin < 1455482026 891706 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :int-e: `learn was supposed to work as people expect. it's just that the problem is AI-complete and people are stupid-complete hth < 1455482049 322821 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :oerjan: `learn did work as I expected. < 1455482069 842015 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Unfortunately my expectations didn't match what I wanted to do. < 1455482095 330316 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :the keyword putting first is awkward sometimes < 1455482115 572137 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :int-e: When you run le/rn, it runs ./le/rn, not bin/le/rn < 1455482133 425391 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`le < 1455482134 227154 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: le: cannot execute: Is a directory < 1455482144 939313 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :I think I'm confused about this behavior < 1455482146 492970 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`` le < 1455482147 560417 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :bash: le: command not found < 1455482163 398684 :FireFly!~firefly@oftn/member/FireFly PRIVMSG #esoteric :`` ls -l le/ < 1455482164 400088 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :total 4 \ lrwxrwxrwx 1 5000 0 17 Dec 9 04:12 rn -> ../bin/slashlearn \ -rwxr-xr-x 1 5000 0 267 Dec 22 18:32 rn_append < 1455482175 672125 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :int-e: i think i'm too < 1455482189 25990 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :but that's becuase ` and the shell (``) seem to look for the command to execute in different ways < 1455482201 932708 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :If I do not tell SDL to initialize video and only initialize audio, then will it avoid doing such things as disable the screensaver and grabbing input and so on? I would rather to just use ALSA or whatever for audio but it seems complicated compared with SDL < 1455482207 570007 :shachaf!~shachaf@unaffiliated/shachaf PRIVMSG #esoteric :Ah, I see what you're confused about. < 1455482290 61211 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 240 seconds < 1455482294 134361 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`canary < 1455482294 933761 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: canary: not found < 1455482301 159427 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`` chmod +x canary < 1455482303 712215 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455482304 464605 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`canary < 1455482305 177081 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: canary: not found < 1455482320 632230 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :int-e: i'm still confused. < 1455482325 500094 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`` ls -l canary < 1455482326 725432 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​-rwxr-xr-x 1 5000 0 10 Feb 14 20:38 canary < 1455482337 182531 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`wisdom < 1455482338 949678 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :twhib/the world holds its breath < 1455482344 730061 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`` find -type d -name le < 1455482348 733074 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`tmflry < 1455482369 999632 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :dammit did you have to search all of it < 1455482374 202463 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: tmflry: cannot execute: Is a directory < 1455482376 987935 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455482397 767516 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :int-e: it genuinely seems to look for directories but not files in . < 1455482410 214586 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :weird < 1455482425 280250 :oerjan!~oerjan@hagbart.nvg.ntnu.no PRIVMSG #esoteric :`` tmflry < 1455482426 328417 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :bash: tmflry: command not found < 1455482557 349214 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :O, I found PortAudio; maybe I can use that instead < 1455482576 297598 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455483030 365603 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be JOIN :#esoteric < 1455483173 110732 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :portaudio? isn't that some super old thing? < 1455483202 697999 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm I guess not < 1455483215 687454 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455483252 465038 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl QUIT :Ping timeout: 272 seconds < 1455483262 89868 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: wrt the lambdabot message you left 3 days ago (call stack language), ah okay < 1455483289 704378 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in fact, this is pretty much the only way I've ever seen a language become /accidentally/ a PDA < 1455483297 493743 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(I've seen other ways to make PDAs but they're typically intentional) < 1455483368 418778 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what does PDA stand for? < 1455483374 311938 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455483378 951634 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :push-down automaton < 1455483414 374776 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah, what sort of language would become a PDA by accident? Intended regular language or what? < 1455483454 633603 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :basically anything whose only source of infinite memory is the call stack < 1455483467 849254 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :either directly in terms of what functions were called, or indirectly in terms of C-auto-style variables < 1455483479 411046 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah < 1455483501 643833 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: I don't get the context. what is the way a language accidentally became a PDA? < 1455483515 921403 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: see http://esolangs.org/wiki/Splinter for a concrete esolang example < 1455483524 666623 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it was intended as an FSM < 1455483563 79569 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I know lots of languages are PDAs either because they have goto (but no gosub) and a stack memory, or because they have function calls and local variables and arguments < 1455483589 947844 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :oh, hmm, good point < 1455483594 111310 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :stack-based langauges < 1455483604 838789 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :befunge-93 is a PDA I think, not via means of a call stack, but via means of its data stack < 1455483647 556178 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :hm probably < 1455483693 726849 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: how many stacks do you need to be more than PDA? Is 2 enough? < 1455483700 907200 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :2 is enough for TC, yes < 1455483706 270584 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Hm < 1455483713 280782 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Isn't Piet one of those languages that have one data stack and no call stack? < 1455483727 226583 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Only it counts as Turing-complete due to bigints allowed? < 1455483728 739242 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the easiest way to show this is to use the two stacks as a tape: one stack holds values to the left of the IP, one stack holds values to the right of the IP < 1455483739 271053 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Ah no... < 1455483739 804940 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :fwiw, this is the reason why Underload can be Turing-complete without * and a < 1455483749 692929 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Piet can access the data stack arbitrarily deep < 1455483767 188627 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :then it has a RAM (not a very convenient one though) even without bignums < 1455483771 621346 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ok < 1455483775 710285 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(which prevents it placing anything on the stack that doesn't appear literally in the program, meaning that there are only a finite number of possible stack elements) < 1455483789 252860 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(it still needs bigints for arbitrarily large ram, but no exponentially large numbers) < 1455483792 228200 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :sorry < 1455483793 436800 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(and thus requiring the use of the call stack and data stack as your two stacks, as you have nowhere else to store data) < 1455483832 660082 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yep, I've implemented a tape with two stacks that way, only I used multiple tapes, not only one < 1455483863 703494 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what about a pure call stack (just calls on it) and one data stack? That is still TC then? < 1455483868 421806 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well once you have one tape (and sensible control structures) you can do anything, as BF famously shows < 1455483884 712549 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: yes, in terms of data < 1455483900 208984 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: but not in terms of what? < 1455483905 866193 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(it could fail to be TC for another reason, e.g. if it always halts, or if there are sufficiently severe restrictions on which commands you can run) < 1455483913 519695 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :right < 1455483921 888275 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :right, it needs good control structures so you can actually use the call stack properly < 1455483930 957685 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :obviously < 1455483933 362379 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :well, not necessarily "good", just sufficient < 1455483962 353679 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :the interesting part of manipulating a pure call stack is that it has interesting results on the program flow < 1455483962 990561 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I added .................................................... updating the demo in a few minutes < 1455483965 91484 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm, what extra powers do you need to add to call/cc to make a TC language? < 1455483971 920100 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :subtle cough is sub-TC but it can't be far off < 1455483992 771181 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :subtle cough is a language name? < 1455483995 764915 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Awesome one < 1455484007 635304 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :yes, turns out it's pretty low-powered though < 1455484015 269513 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :IIRC it only has three essentially different programs < 1455484066 761795 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ouch < 1455484097 932200 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`u8tbl 0x1d504 0x1d51d < 1455484099 335542 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484108 577489 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :AUGH < 1455484115 36834 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :what does u8tbl do? < 1455484124 17798 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :Apart from crashing < 1455484124 740665 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`u8tbl 0x1D504 0x1D51D < 1455484125 356552 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484133 79054 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :`u8tbl --help < 1455484133 703008 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484136 220945 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :`u8tbl < 1455484136 887353 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484138 851933 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`u8tbl 0x100 0x200 < 1455484139 849243 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484140 189739 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :seems broken < 1455484147 844198 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x1D504 0x1D51D < 1455484148 879921 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​𝔄𝔅𝔆𝔇𝔈𝔉𝔊𝔋𝔌𝔍𝔎𝔏 \ 𝔐𝔑𝔒𝔓𝔔𝔕𝔖𝔗𝔘𝔙𝔚𝔛𝔜𝔝 < 1455484160 380344 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :`u8tbl 0 1 < 1455484161 600279 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :Segmentation fault < 1455484162 477074 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :oh, you can't call it with ` < 1455484177 681874 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :\oren\: oh? why? and what does `` do? < 1455484182 631836 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :u8tbl 0 1 < 1455484186 946890 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x40 0x80 < 1455484188 516431 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​@ABCDEFGHIJKLMNO \ PQRSTUVWXYZ[\]^_ \ `abcdefghijklmno \ pqrstuvwxyz{|}~ \ < 1455484198 220144 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :well, that is just mojabake < 1455484207 473587 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :`file bin/u8tbl < 1455484207 992553 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x40 0x50 < 1455484209 303205 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :bin/u8tbl: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0xf4bd6215e42f01142295c499b7a9bf8a7c37e01a, not stripped < 1455484209 676704 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​@ABCDEFGHIJKLMNO \ P < 1455484211 24684 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: by the way, what's your opinion on Rust? I've looked at it lately, and it seems to be an interesting research language, though still not yet mature enough. I should maybe try it some day in the future. < 1455484228 779154 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: I'm annoyed it isn't in the Ubuntu repositories yet; if it were, I might seriously try to use it < 1455484229 300676 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455484229 709048 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :it prints the unicode characters from the first number ot the second < 1455484244 484123 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :\oren\: no it doesn't; it's probably /meant/ to, but it appears to do somethign else < 1455484249 400483 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I wrote it in C awhile back < 1455484260 387560 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x60 0x70 < 1455484261 555098 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​`abcdefghijklmno \ p < 1455484261 697325 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: any progress on feather btw? < 1455484267 927552 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :I expect the answer to be no? < 1455484276 518925 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: indeed < 1455484283 795477 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :feather? is that the project we don't talk about? < 1455484291 829803 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 060 070 < 1455484292 614724 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :012345678 < 1455484299 328740 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :yes it does < 1455484303 122932 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: there is obviously no such thing as feather, what are you talking about < 1455484333 247380 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :`` u8tbl 5 4 < 1455484334 177852 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455484338 617732 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: I'm confused about other people's nonexistant projects. I can barely keep my nonexistant future long term todo projects in line. < 1455484351 435477 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Some of them are secret, some I do talk about. < 1455484358 254033 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 4 5 < 1455484359 228778 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​ < 1455484366 723408 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Many will probably never materialize. < 1455484372 2436 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :s/Many/Most/ < 1455484396 799248 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: don't forget elliott's OS < 1455484400 553026 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :whatever that was called < 1455484401 344893 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x100 0x110 < 1455484402 282110 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​ĀāĂ㥹ĆćĈĉĊċČčĎď \ Đ < 1455484420 831831 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :looks right to me < 1455484438 402666 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :`` u8tbl 0x1D504 0x1D51D < 1455484439 372808 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​𝔄𝔅𝔆𝔇𝔈𝔉𝔊𝔋𝔌𝔍𝔎𝔏 \ 𝔐𝔑𝔒𝔓𝔔𝔕𝔖𝔗𝔘𝔙𝔚𝔛𝔜𝔝 < 1455484447 311952 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: obviously I'd be interested to see ais523's version control system < 1455484463 666164 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so would I! < 1455484471 670725 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :heh < 1455484481 877513 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: well what is unique with scapegoat? < 1455484485 781605 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: the OS in question wasn't named; we typically called it @ in here, with the understanding that once it got a name, we'd retroactively edit the lgos < 1455484492 668949 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :to contain the true name of the OS < 1455484499 877859 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what < 1455484511 604572 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :couldn't you give a better development codename? < 1455484515 653230 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah, right < 1455484522 72748 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: wasn't my idea! < 1455484522 938642 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :with the understanding that it would get a marketing name later? < 1455484576 831855 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: scapegoat (in theory) has a simpler interface than most DVCSes, is better at handling merge conflicts, and dodges the downsides of both darcs and git < 1455484590 452635 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what is the catch? < 1455484597 887275 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :it hasn't been written yet < 1455484606 449438 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: and will it be very hard to write? < 1455484611 284516 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :nor does it exist in any sort of non-vaporware sense < 1455484616 538793 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :compared to something like git? < 1455484619 246497 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and yes, it isn't easy to write either < 1455484629 347274 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :oerjan: that's not very nice :( < 1455484631 503533 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mostly due to design issues < 1455484642 228976 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't think it'd be substantially harder to write than git or darcs once the design is complete < 1455484643 434639 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: I assume neither git nor darcs was easy to write, but this is probably 100 times worse? < 1455484649 411138 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :oh okay < 1455484659 552216 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: does it have a model of what it stores in the repository yet? (not the representation, but what info it conceptually stores) < 1455484712 522598 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: yes: the basic unit is called a "turtle" for lack of a better name; turtles contain dependencies on other turtles, edits to files, and edits to other turtles < 1455484735 812708 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: anything wrong with "changeset"? < 1455484737 745255 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :also it isn't just my VCS, although I did most of the planning, the rest of #esoteric helped too < 1455484760 53033 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: well you can derive the entire current state of the project (recursively) from one turtle < 1455484763 580363 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :you can't do that with one changeset < 1455484769 300306 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :As in, svn stores a series of revisions, each of which has a mutable map of revprops, and a deep-immutable tree of directories and files, where each directory or file stores a parent (an optional ref to an existing file in a previous version which has the same isdir) and a map of properties. < 1455484770 977390 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah okay < 1455484792 496841 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I guess a turtle is a combination of a version, and the subset of history that lead to the creation of that version < 1455484796 727459 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: wait, wasn't the basic unit a blame? < 1455484849 898411 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: um, how is a tree of files derived from a turtle when you checkout, if such a thing exists? < 1455484899 723756 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I don't understand what “dependencies on other turtles, edits to files, and edits to other turtles” means really < 1455484915 609143 :callforjudgement!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1455484919 86034 :tromp__!~tromp@ool-18be0bd8.dyn.optonline.net JOIN :#esoteric < 1455484933 237454 :callforjudgement!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: well the point is that you can track every line of versioned code back to the turtle that created it < 1455484939 153975 :ais523!~ais523@unaffiliated/ais523 QUIT :Disconnected by services < 1455484941 846851 :callforjudgement!~ais523@unaffiliated/ais523 NICK :ais523 < 1455484962 288567 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: so the version control system is basically blame-based; it uses this information to do merges correctly, for example < 1455484973 23047 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: that nick.. what was the game it was related to now again? < 1455484984 69598 :p34k!~p34k@nat-wh-wz4-12.rz.uni-karlsruhe.de QUIT :Ping timeout: 240 seconds < 1455484987 781331 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: nomic < 1455484993 650875 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah, right < 1455485013 618695 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :`? nomic < 1455485014 861537 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :nomic? ¯\(°​_o)/¯ < 1455485015 238643 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ugh, I'm installing yosys and its build system involves cmake calling out to hg to download a dependency from somewhere < 1455485020 104252 :p34k!~p34k@nat-wh-wz4-12.rz.uni-karlsruhe.de JOIN :#esoteric < 1455485025 453361 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :int-e: http://en.wikipedia.org/wiki/Special:Search?go=Go&search=Nomic < 1455485027 342657 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Another alternative for Git and so on is Fossil; did you examine that one? < 1455485040 906657 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :ais523: I was curious whether we had a wisdom about it :P < 1455485068 704422 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :it seemed like something that should exist < 1455485075 337420 :int-e!~noone@static.88-198-179-137.clients.your-server.de PRIVMSG #esoteric :now I'm disappointed < 1455485081 791032 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this is incredibly bad both on the basis of security reasons (someone could change the result of installing a version without any changes to the source), and on the fact that I can't rebuild offline < 1455485104 978810 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? callforjudgement < 1455485105 879748 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :callforjudgement? ¯\(°​_o)/¯ < 1455485108 387931 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? callforjudgment < 1455485109 442370 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :callforjudgment? ¯\(°​_o)/¯ < 1455485115 21753 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: first spelling was correct < 1455485148 619542 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? wrathofgod < 1455485149 650790 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :wrathofgod? ¯\(°​_o)/¯ < 1455485154 207320 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? wrath of god < 1455485155 251441 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :wrath of god? ¯\(°​_o)/¯ < 1455485157 158813 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? day of judgment < 1455485158 202230 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :day of judgment? ¯\(°​_o)/¯ < 1455485159 833130 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? day of judgement < 1455485160 809769 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :day of judgement? ¯\(°​_o)/¯ < 1455485164 410637 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? day of jugement < 1455485166 100966 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :day of jugement? ¯\(°​_o)/¯ < 1455485166 243490 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? day of jugment < 1455485167 394495 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :day of jugment? ¯\(°​_o)/¯ < 1455485175 437891 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl QUIT :Ping timeout: 240 seconds < 1455485175 964071 :gniourf!~gniourf@pdm-l03.insa-lyon.fr QUIT :Ping timeout: 240 seconds < 1455485176 221700 :tromp_!~tromp@ool-18be0bd8.dyn.optonline.net QUIT :Ping timeout: 240 seconds < 1455485178 959999 :p34k!~p34k@nat-wh-wz4-12.rz.uni-karlsruhe.de PART :#esoteric < 1455485242 432224 :jaboja!~jaboja@aejf81.neoplus.adsl.tpnet.pl JOIN :#esoteric < 1455485339 724123 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455485422 657048 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(Wrath of God was replaced by Day of Judgment which has a more modern templating, same as Terror got replaced by Doom Blade, and it was in Zendikar in particular because it works better with the pseudo-regeneration effects in ROE) < 1455485490 389400 :gniourf!~gniourf@pdm-l03.insa-lyon.fr JOIN :#esoteric < 1455485499 330214 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :b_jonas: what are you talking about < 1455485507 563010 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Vorpal: M:tG < 1455485512 96909 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah < 1455485567 197436 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: Day of Judgment isn't a more modern templating, it's an intentionally different functionality < 1455485569 553281 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: what is yosys? < 1455485569 852783 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :doesn't bypass regenerators < 1455485580 952011 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: open-source Verilog synthesizer, apparently < 1455485584 505524 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah < 1455485609 65332 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :when anyone asks about open-source FPGA tools I said there weren't any, but I just discovered there's an open-source Verilog toolchain that targets a real existing FPGA < 1455485613 908637 :oerjan!~oerjan@hagbart.nvg.ntnu.no QUIT :Quit: Gah < 1455485614 165119 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :now I'm planning to try it out < 1455485621 520213 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah < 1455485641 466954 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yes, but it's more modern, basically Wizards decided that the "can't regenerate" usually shouldn't appear on cards because it's stupid, it either makes regeneration useless, or is a useless clause if there's no regeneration in the environment < 1455485668 358285 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :This is experimental software! It might have bugs that cause it to produce bitstreams which could damage your FPGA! So when you buy an evaluation board, get a few. < 1455485679 619352 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(they do "can't be prevented" sometimes though, which I don't really like, because it's a red thing that screws with white) < 1455485689 34364 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: ouch < 1455485695 507007 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: the way I think about it, it prevents you using your own regenerators to get around the board wipe < 1455485702 366078 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455485730 536448 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(it's enough that red does direct non-combat damage when white and green can protect better against combat damage, they shouldn't also bypass my protections) < 1455485733 896331 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ais523: shouldn't it just be a case of loading a new software on it, as long as you don't cause the IO ports to fry? < 1455485753 481425 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this is much the same way that shroud is a better ability than hexproof; the problem with hexproof is that it makes buffing auras disproportionately powerful, meaning that most buffing auras are either worthless without the hexproof combo or overpowered with it < 1455485762 452891 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :if hexproof didn't exist then auras could be made much better without issues < 1455485789 426309 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: well suppose your bitstream connects the power rails together, the chip may well burn out < 1455485800 155561 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I don't know if it's possible to configure an FPGA like that or not < 1455485804 950815 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :ah < 1455485806 995050 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: exactly. which is why Zendikar has Day of Judgment, so you can use your Eland Umbra to have your creatures survive. It's even better with board wipers that destroy all permanents. < 1455485820 53527 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Some of my own custom cards use shroud instead of hexproof, because no player is supposed to target it < 1455485828 417806 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :which FPGA does this target? < 1455485835 964918 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: very few board wipers destroy all permanents, because Wizards hates land distruction < 1455485840 460958 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :*destruction < 1455485842 814668 :atrapado!~atrapado@unaffiliated/atrapado QUIT :Quit: Leaving < 1455485866 376863 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Vorpal: Lattice iCE40, apparently < 1455485874 429094 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :never heard of that brand < 1455485877 466776 :Vorpal!~Vorpal@unaffiliated/vorpal PRIVMSG #esoteric :is it any good? < 1455485878 855924 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: yep. all those board wipers are old, and usually expensive in terms of in-game costs. but they still exist in modern. < 1455485923 247367 :\oren\!~oren@65.94.99.149 QUIT :Quit: Lost terminal < 1455485952 176444 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Hmm, does spot removal like Befoul exist after Kamigawa, which is when Befoul was last printed? < 1455485967 484816 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :what does Befoul do? < 1455485989 651876 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :for 2BB, sorcery, destroy target land or nonblack creature, no-regen < 1455485999 558987 :oren!~oren@65.94.99.149 JOIN :#esoteric < 1455486012 812584 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it really showcases what black can do < 1455486018 279689 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and what black can't do < 1455486042 722594 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :b_jonas: Wrecking Ball (destroy target land or creature for 2RB) was printed in the original Ravnica block, possibly again later < 1455486043 272170 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :black can discard your cards or destroy your creatures or lands, but not touch your non-land non-creature permanents < 1455486057 3683 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ah yes! nice < 1455486057 926664 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm < 1455486062 303875 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the "nonblack" restriction on removal is very rare nowadays though < 1455486067 55050 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :yep < 1455486074 253008 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :which I think is a pity; one of the advantages of black creatures used to be that black removal didn't work on them < 1455486090 866873 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :but that hasn't been the case for ages, and in general, black creatures just tend not to be very good nowadays as a result < 1455486100 239945 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and fear and landwalk and intimidate are gone too, so are most color hosers that explicitly mention a color < 1455486111 464689 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :um, they never were good < 1455486115 418004 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :at least the lower mana cost ones < 1455486126 770021 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :black has always had the worst creatures among all five colors < 1455486129 639499 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :worse even than blue < 1455486150 51675 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm, which is the other black-red destroyer instant? < 1455486223 65935 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :the best creature in the game to cheat out is black < 1455486230 195342 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(i.e. if you don't care about the mana cost) < 1455486287 717675 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ah yes, Terminate < 1455486321 108231 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: that might be true. which creature is that? < 1455486341 852174 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :Griselbrand < 1455486350 382903 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :mostly for the "Pay 7 life: Draw 7 cards" ability < 1455486353 725922 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but they don't print easy ways to cheat out cards since they printed the huge Eldrazi < 1455486358 427176 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this makes it almost impossible to lose once it's in play < 1455486373 904588 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(also, it's /newer/ than Rise of the Eldrazi: it comes from Avacyn Restored) < 1455486387 463684 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ais523: sure, they still print big creatures < 1455486388 118908 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(although the most recent huge Eldrazi came from Oath of the Gatewatch, the most recent set) < 1455486391 815660 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :they don't print easy reanimation < 1455486396 443257 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :ah right < 1455486399 309619 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :indeed < 1455486412 663986 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :doesn't mean that creature-cheating doesn't exist in Modern < 1455486415 827092 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :sure < 1455486420 843289 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :Zombify isn't just gone < 1455486422 877553 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(it exists in Standard too but costs CMC 6) < 1455486427 831381 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and Zombify isn't even good as creature cheaters go < 1455486430 165823 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's just vanilla < 1455486472 469588 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :if you want to build a deck that cheats creatures in play, you have to go for one that tries to cheat a creature in play on your second turn with 40% probability or something. I never understood how that worked. < 1455486506 57960 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :in which format? < 1455486518 45584 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :dunno < 1455486524 204401 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :maybe that's just my impression < 1455486527 471398 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I'm guessing Modern, because in Legacy you can get well over 40% on turn 1 I think (Reanimator) < 1455486543 801689 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and in Modern, you can manage it on turn 2 but I think most decks would be aiming for turn 3 < 1455486544 751904 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :the casual reanimator I played against was mostly modern, but probably not exclusively I think < 1455486555 613614 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it might have aimed to turn 3 < 1455486583 186098 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :this is because most modern decks win on turn 4 unopposed, and combo decks typically delay the combo as long as they can hold onto it so that they can protect it better < 1455486595 428722 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(unless they can do it before the opponent has any ability to disrupt it /and/ it wins outright) < 1455486609 465166 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :decks like ANT in Legacy can combo quickly but prefer to combo slowly < 1455486617 664884 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :so that they can fight through more disruption < 1455486622 706230 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but it definitely didn't want to just pay 4 mana for Zombify or 5 mana for Rise from the Grave like I tried to do incidentally in my not-really-reanimating black deck < 1455486637 688013 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :(there's a simliar deck called The Epic Storm which does aim to go off as fast as possible, and does a lot of things differently as a result) < 1455486655 994863 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :hmm… Humanimator was a deck in Innistrad/Return to Ravnica standard < 1455486673 561322 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :and there were decks based around Whip of Erebos while Theros was in standard < 1455486675 574465 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but in modern, you can no longer just sell your soul to Leshrac to get mana for free < 1455486679 573434 :ais523!~ais523@unaffiliated/ais523 PRIVMSG #esoteric :I think those are the most recent viable Standard reanimator decks < 1455486746 791531 :ais523!~ais523@unaffiliated/ais523 QUIT : < 1455487094 632106 :oren!~oren@65.94.99.149 PRIVMSG #esoteric :I also added ⚐⚑⚒⚓⚔⚕⚖⚗⚘⚙⚚ₐₑₒₓₔₕₖₗₘₙₚₛₜ⛄⛅⛇⛈ꝖꝗꝘꝙꝚꝛꝜꝝꝞꝟꝠꝡꝢꝣꝤꝥꝦꝧ < 1455487128 303856 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :oren: where are your backslashes? < 1455487151 565785 :oren!~oren@65.94.99.149 PRIVMSG #esoteric :whoops, irssi crashed and I forgot to readd them < 1455487159 61961 :oren!~oren@65.94.99.149 NICK :\oren\ < 1455487203 541192 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: ah, I see you moved not only the repeat marks, but also the long vowel mark to the punctuation header < 1455487254 999329 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :well, it's not really a kana. < 1455487281 816718 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: uh, something seems off with the width or horizontal offset of the fraktur uppercase letters, somewhere near U < 1455487290 591017 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :at least as rendered here < 1455487312 210914 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :(I always find fraktur hard to read, because I'm not used to it) < 1455487354 12270 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: when you say you have all kanji taught in primary school, primary school means which grades? < 1455487360 959835 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :hmm I can't see any weird width but I do see a stray pixel... < 1455487372 600479 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :grades 1 thru 6 in Japan < 1455487380 440381 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I see < 1455487389 451991 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :e.g. the entire kyoiku kanji list < 1455487408 201489 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :but not the joyo kanji taught in grades 7-12 < 1455487435 376350 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :which are simplycalled middle 1-3 and high 1-3 in japan < 1455487439 272602 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: the number 1 kanji still looks confusingly similar to the (horizontal) long vowel mark. shouldn't you do something about that, to help proofreading Japanese text? < 1455487461 756163 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: strange... wouldn't that mean way more kanji than you have? < 1455487475 331835 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :can you really have grades up to 6 in this few? < 1455487477 575913 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :hmm < 1455487492 157649 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :i have 1385 kanji total < 1455487511 84763 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I mean, I remember when you needed just two more for grade 2, but at that point like half of grade 3 was missing iirc < 1455487531 399740 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :good work in that case < 1455487560 414885 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :https://ja.wikipedia.org/wiki/%E5%AD%A6%E5%B9%B4%E5%88%A5%E6%BC%A2%E5%AD%97%E9%85%8D%E5%BD%93%E8%A1%A8 < 1455487579 359867 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :I did all the kanji on this list, iow < 1455487656 510810 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :there are only ~2100 kanji in the jouyou list < 1455487685 540897 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: the "Mathematical Operators, misc technical, APL, OCR, etc..." block already has cursive lowercase asciilatin letters, but you have a separate "Math special forms" block for the fraktur. is that deliberate? shouldn't you move the cursive letters? < 1455487694 746853 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :but that's far from a complete list, lots of words use non-jouyou kanji < 1455487700 879388 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :sure < 1455487713 845548 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :the cursive letters are currently in the wrong place < 1455487724 224928 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :encodingowise I mean < 1455487737 632382 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what's the status of hangul support? < 1455487748 572634 :\oren\!~oren@65.94.99.149 PRIVMSG #esoteric :still having software problems < 1455487754 576394 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I see < 1455487833 296311 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :What's your ranking in that list of fonts ordered by the number of characters that you used to care about? < 1455487927 492592 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and iirc unicode counts the long vowel mark as a kana and a punctuation but not a letter, whereas most other kana are letters < 1455488003 703518 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455488135 268569 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :\oren\: well, it looks here as if the T was shifted to the right like half a character cell < 1455488142 823761 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so it overlaps the U < 1455488153 235754 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :the fraktur ones I mean < 1455488815 277605 :AnotherTest!~turingcom@94-224-66-163.access.telenet.be QUIT :Quit: ZNC - http://znc.in < 1455489173 694181 :heroux!sandroco@gateway.insomnia247.nl JOIN :#esoteric < 1455489874 84291 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :fungot, can you read fraktur? < 1455489874 655600 :fungot!~fungot@momus.zem.fi PRIVMSG #esoteric :b_jonas: mr president, i would say that we annually import chiefly from south america at present around 30 million tonnes of pigmeat or 6 more than in 1998. the commission has been active as head of government to telephone members of this parliament is somewhat concerned about the criminal activities of the respective identities of each member state. < 1455489881 267899 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`wisdom < 1455489883 303261 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`? fraktur < 1455489890 803441 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :fraktur? ¯\(°​_o)/¯ < 1455489893 791372 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :zombiecheney/ZombieCheney lives under a bridge. < 1455489894 958222 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`ls wisdom/tr* < 1455489896 7762 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :ls: cannot access wisdom/tr*: No such file or directory < 1455489902 616078 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :``` ls wisdom/tr* < 1455489903 986827 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :wisdom/transformer \ wisdom/translater \ wisdom/treant \ wisdom/treaty \ wisdom/treefolk \ wisdom/trick \ wisdom/trisecting the angle < 1455489910 532181 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :```` ls wisdom/tr* < 1455489911 433865 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ```: not found < 1455489916 25033 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` type '``' < 1455489917 6857 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​`` is /hackenv/bin/`` < 1455489928 616969 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :huh, didn't I create a bin/"```" ? < 1455489944 93371 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :``` cat bin/"``" < 1455489945 100025 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :cat: bin/: Is a directory < 1455489951 449943 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :wrong quotes < 1455489953 63801 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :``` cat bin/'``' < 1455489953 823629 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :yeah < 1455489954 396989 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​#!/bin/sh \ export LANG=C; exec bash -O extglob -c "$@" < 1455489966 471900 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and I only redefined bin/'``' < 1455489970 790931 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :easier < 1455489975 729106 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :why that LANG=C thing? < 1455489985 296039 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`` locale < 1455489986 161542 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :LANG=en_NZ.UTF-8 \ LANGUAGE= \ LC_CTYPE="en_NZ.UTF-8" \ LC_NUMERIC="en_NZ.UTF-8" \ LC_TIME="en_NZ.UTF-8" \ LC_COLLATE="en_NZ.UTF-8" \ LC_MONETARY="en_NZ.UTF-8" \ LC_MESSAGES="en_NZ.UTF-8" \ LC_PAPER="en_NZ.UTF-8" \ LC_NAME="en_NZ.UTF-8" \ LC_ADDRESS="en_NZ.UTF-8" \ LC_TELEPHONE="en_NZ.UTF-8" \ LC_MEASUREMENT="en_NZ.UTF-8" \ LC_IDENTIFICATION="en_NZ < 1455490006 2133 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :that doesn't explain it < 1455490010 469992 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :izabera: wrong collation by default, so eg. [a-z] will match the wrong thing in shell wildcard expansion < 1455490011 588726 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` cat bin/\` < 1455490012 536407 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :TIMEFORMAT='real: %lR, user: %lU, sys: %lS' exec bash -c -- "$1" < 1455490017 597398 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :I put in LANG=C so that it would use the correct locale. < 1455490027 752847 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :(It is the only good one in my opinion) < 1455490040 516273 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :yep < 1455490048 199867 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :almsot < 1455490050 26164 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :is [a-z] the only problem? < 1455490054 180279 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :izabera: no < 1455490063 195904 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ls sorts wrong < 1455490065 27824 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and other stuff < 1455490075 560808 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :we here know the ascii table and expect asciibetical sort < 1455490077 384110 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :and there's more < 1455490094 236473 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :the [a-z] is just the most obvious < 1455490106 196920 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :that [a-z] matches T is horrible < 1455490150 713641 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :On my own computer I do have LANG=C in my login file so that it will always use the C locale. I want to change the system locale also to C but I am unsure how. The "ship to end user" program did not offer the choice of the C locale < 1455490187 646282 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :you want LC_COLLATE=C < 1455490199 624497 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :anyway, I added the extglob part to bin/\`\` < 1455490229 697844 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :you don't really need a new shell for that, do you? < 1455490238 766286 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :maybe I should create commands with larger number of backticks, the only difference being that they export some env-vars so the command can tell the top-level command (both the backticks part and the argument) < 1455490248 876199 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :izabera: a new shell for what? < 1455490251 595989 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` cat bin/\` < 1455490252 473405 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :TIMEFORMAT='real: %lR, user: %lU, sys: %lS' exec bash -c -- "$1" < 1455490254 66825 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` cat bin/\`\` < 1455490255 85525 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​#!/bin/sh \ export LANG=C; exec bash -O extglob -c "$@" < 1455490272 340593 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :izabera: do you mean a new command in bin? < 1455490282 949051 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` type bash < 1455490283 813902 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :bash is /bin/bash < 1455490285 956458 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :izabera: we didn't want to modify the single backtick, for backwards compatibility < 1455490302 635440 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it was such a basic command, people could be depending on the broken locale < 1455490309 960542 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :which is why someone added the double backtick < 1455490338 40478 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :``` cat bin/run < 1455490338 868233 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :echo run run run < 1455490339 169249 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` printf '#!/bin/bash\nTIMEFORMAT="real: %%lR, user: %%lU, sys: %%lS"\neval -- "$1"\n' > bin/\` < 1455490342 294080 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :No output. < 1455490346 552316 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :fuck < 1455490368 581273 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` echo $BASH_VERSION < 1455490369 500162 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :huh? what are you doing? < 1455490369 642541 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :4.2.37(1)-release < 1455490381 23976 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` shopt globasciiranges < 1455490381 367860 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :oh < 1455490381 994146 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/hackenv/bin/`: line 3: shopt: globasciiranges: invalid shell option name < 1455490385 992265 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :eval instead of exec bash? < 1455490401 95484 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :`` printf '#!/bin/bash\nTIMEFORMAT="real: %%lR, user: %%lU, sys: %%lS"\nshopt -s extglob globstar\neval -- "$1"\n' > bin/\` < 1455490403 286097 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/hackenv/bin/`: line 4: lob: command not found < 1455490410 325508 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :wat < 1455490416 803742 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :did i break something? < 1455490419 317058 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I think bash -c is safer, just in case they get somehow shelled with sh instead of bash despite the shebang < 1455490437 496347 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`` cat -v bin/\` < 1455490438 416448 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​#!/bin/bash \ TIMEFORMAT="real: %lR, user: %lU, sys: %lS" \ shopt -s extglob globstar \ eval -- "$1" < 1455490452 683264 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what the heck < 1455490459 521459 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :don't change backtick to set extglob < 1455490468 68639 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's not COMPLETELY backwards compatible < 1455490472 32020 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :just almost < 1455490475 200344 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :it is < 1455490485 519809 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :there are some crazy contexts where the extglob had a meaning before < 1455490493 336183 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :a different meaning < 1455490498 325589 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :that's not true < 1455490525 784370 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I think it is < 1455490533 584691 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :they're very rare and no sane user is typing such things < 1455490536 920317 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but we're on #esoteric < 1455490539 570175 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :no < 1455490544 542864 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :this isn't true < 1455490562 723466 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :the one context in which it was valid was pattern matching when you put that pattern in a variable and then match against the variable < 1455490572 682971 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :bash 4+ enables extglob in pattern matching even if it's disabled in the shell < 1455490627 173615 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but isn't there some strange context with history expansion or strange redirects or something where the extglob syntax just happens to be valid with some other meaning without extglob? < 1455490646 429648 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :hist expansion is only in interactive shells < 1455490658 364383 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :yeah, I guess that's true < 1455490664 4894 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :but redirects or something < 1455490666 859944 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :or variable stuff < 1455490667 991830 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :dunno < 1455490689 388065 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ah, globstar enables zsh-like double star? < 1455490690 429234 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :wow < 1455490692 744102 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I didn't know < 1455490720 952674 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :don't you say anything against that? < 1455490726 378737 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :that's obviously not backwards compatible < 1455490741 92714 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :I didn't know what it meant < 1455490749 608293 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :anyway < 1455490755 410584 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :does single backtick work now? < 1455490758 446084 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :` echo hello world < 1455490759 319052 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: : not found < 1455490763 981948 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`` echo hello world < 1455490764 742816 :HackEgo!~HackEgo@162.248.166.242 PRIVMSG #esoteric :hello world < 1455490772 305481 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :`` :o < 1455491253 252455 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :you should fight for that < 1455491263 455901 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :that's definitely against posix < 1455491288 244775 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :so is the brace expansion, isn't it? < 1455491301 273421 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :correct < 1455491322 217790 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :well, if you want posix, you can always sh -c < 1455491326 711275 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Can you please to tell me if this is good or you think something is wrong with this? https://www.npmjs.com/package/genasync < 1455491334 373465 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :or, um, POSIXLY_CORRECT=1 sh -c < 1455491353 446991 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :zzo38: I never heared of that thing < 1455491370 973611 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :what the heck is that? is it something python? < 1455491378 790901 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :b_jonas: No, it is JavaScript < 1455491385 53783 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :ah < 1455491391 770001 :izabera!~izabera@unaffiliated/izabera PRIVMSG #esoteric :you want nodepython < 1455491450 786005 :b_jonas!~x@russell2.math.bme.hu PRIVMSG #esoteric :it's getting late, good night, #esoteric < 1455492055 613667 :deltab!~deltab@cpc1-smal2-0-0-cust155.19-1.cable.virginm.net QUIT :Ping timeout: 260 seconds < 1455492242 29346 :zzo38!~zzo38@24-207-50-123.eastlink.ca PRIVMSG #esoteric :Well I prefer JavaScript instead < 1455492254 59445 :ais523!~ais523@unaffiliated/ais523 JOIN :#esoteric < 1455492254 202423 :variable!~variable@freebsd/developer/variable QUIT :Quit: 1 found in /dev/zero < 1455492575 698564 :heroux!sandroco@gateway.insomnia247.nl QUIT :Ping timeout: 264 seconds < 1455492717 16064 :heroux!~heroux@gateway.insomnia247.nl JOIN :#esoteric < 1455493628 178322 :lleu!~gnomebad@unaffiliated/lleu QUIT :Quit: That's what she said < 1455493827 668101 :hppavilion[1]!~DevourerO@58-0-174-206.gci.net JOIN :#esoteric